Skip to content

gadelkareem/skeleton

Repository files navigation

Skeleton

CI Github Mirror Github Mirror

A complete Golang and Nuxt boilerplate for your project with Subscription management system, backend API, frontend, tests and CI/CD pipelines.

Features

Development

There are 2 methods to run Skeleton locally

  • Install required libs locally on OSX:
./init.sh init

Then Run the frontend and backend servers:

./init.sh

-- OR --

  • Run the full stack on Docker: Note that yarn install might take some time.
docker-compose up
# run tests
docker exec -it skeleton_backend_1 /bin/bash -c "go test -v ./... -count=1 | sort -u"

Generate Nuxt static files

./build.sh

Deploy to Render

  • Fork the Skeleton repository on GitHub
  • Add the following CI/CD secrets in your repository settings:
    cat "$PROD_CONFIG_SECRET_FILE" | base64
  • Trigger the GitHub Actions workflow from the Actions tab.
  • Create a new Web Service on Render and connect it to your repository.
  • Use the provided render.yaml to create the required services on Render.
  • For more information, check .github/workflows/ci.yml to review how the production container is generated in the pipelines.
  • Optionally you can also push your final image to Docker Hub by adding your username and password as CI/CD environment variables:
    • DOCKER_HUB_USER: docker hub username
    • DOCKER_HUB_PASSWORD: docker hub password

Services

Mail service

Skeleton works in development with MailHog in docker which you can access via http://localhost:8025/. To use MailTrap instead, change ./src/backend/conf/app.dev.ini SMTP config to match MailTrap settings.

Tests

Backend

cd src/backend
go test -v ./... -count=1 | sort -u
#extra
go test -v backend/controllers -count=1 -debug=7 -run  TestUserController_VerifyMobile
#colourfull
go test -v ./... -count=1 | sed ''/PASS/s//(printf "\033[32mPASS\033[0m")/'' | sed ''/FAIL/s//(printf "\033[31mFAIL\033[0m")/''

Frontend

cd src/frontend
yarn test

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •