/giffon

A crowd-gifting platform where you can state what you want and let your friends collectively buy it as a gift for you. 🎁

Primary LanguageHaxeGNU General Public License v3.0GPL-3.0

Giffon

pipeline status

https://giffon.io

Development info

Giffon uses Haxe-compiled JS on both client and server sides.

Develop with VS Code Remote Containers

Install these

After you have cloned the project:

  1. git submodule update --init to make sure the git submodules are up-to-date. If you're not a member of the giffon.io GitLab org, you may need to use git submodule update --init lib, because there is a private submodule that is... private.
  2. Open the project folder in VS Code. Select reopen in dev constainer when it prompts to do so, or use the green button at the bottom-left corner. It will build a container that contain Haxe, node, and run npm install automatically. It will also launch a MySQL container.
  3. npm run-script build to build everything.
  4. npm start to start the server. It should be accessible via https://localhost:3000. Use ctrl + c to stop the server. When the server script is rebuilt, the server will be automatically restarted by nodemon.

Deployment

Deployment is automated by GitLab CI. The master branch is deployed to https://master.giffon.io; the production branch is deployed to https://giffon.io. Pushing to production is a manual process.