RESTful API service scaffold based on Node.js & TypeScript, which is a reimplement of OHP API service v4.
- HTTP server: Koa
- Controller framework: Routing Controllers
- Model framework: Class Transformer & Class Validator
- ORM framework: TypeORM
- API document: Swagger
- Mock API: OpenAPI backend
- Test framework: Jest
- API entry & Health checking
- User management
- Session
- OAuth sign in
- recommend to use with Next SSR middleware
- Platform Admin
- Activity logging
- Hackathon management
- Team management
-
Install GitHub apps in your organization or account:
- Probot settings: set up Issue labels & Pull Request rules
- PR badge: set up Online VS Code editor entries in Pull Request description
-
Click the Use this template button on the top of this GitHub repository's home page, then create your own repository in the app-installed namespace above
-
Click the Open in GitHub codespaces button on the top of ReadMe file, then an online VS Code development environment will be started immediately
-
Recommend to add a Notification step in GitHub actions for your Team IM app
-
Remind the PMs & users of your product to submit Feature/Enhancement requests or Bug reports with Issue forms instead of IM messages or Mobile Phone calls
-
Collect all these issues into Project kanbans, then create Pull requests & add
closes #issue_number
into its description for automation
- Entry: http://localhost:8080/
- Document: http://localhost:8080/docs/
- Schema: http://localhost:8080/docs/spec/
- Type: https://github.com/kaiyuanshe/OpenHackathon-service/pkgs/npm/openhackathon-service
Name | Usage |
---|---|
JWT_SECRET |
encrypt Password & Token |
DATABASE_URL |
PostgreSQL connection string |
npm i pnpm -g
pnpm i
pnpm dev
or just press F5 key in VS Code.
pnpm upgrade:dev
npm start
pnpm upgrade:pro
pnpm pack-image
pnpm container
git checkout master
git tag v1.0.0 # this version tag comes from ./package.json
git push origin master --tags
git checkout master
git tag type-v1.0.0 # this version tag comes from ./type/package.json
git push origin master --tags