Skip to content
/ web_template Public template

Next.js / Django template for quick prototyping.

License

Notifications You must be signed in to change notification settings

0x29a/web_template

Repository files navigation

WebTemplate

GitLab CI pipeline status.

Template for a quick web services prototyping. It's intended to speed up bootstrapping of production-ready applications, with Django-based backend, and Next.js-based frontend. In attempt to reduce boilerplate to the absolute possible minimum, it utilizes technologies such as:

  • drf-spectacular to generate OpenAPI 3 schema.
  • redux-toolkit and @rtk-query/codegen-openapi to generate API client based on RTK Query.
  • pip-tools to manage dependencies.
  • Next.js for its file-based routing, nice static pages handling and dozens of other optimizations.
  • Tailwind UI, as utility classes play really nice with reusable React components.
  • GitLab CI, which, in addition to quality checking, is used to build and host OCI images.
  • ...and many other.

By default, the template is intended be deployed to a DigitalOcean droplet, but since the images are pre-built continuously, it's trivial to switch to fly.io, AWS ECS or Kubernetes.

In addition to all the cool tooling, I try to document all technological / architectural decisions in docs/, so it's easier to continue working on this project after large breaks.

Getting started

  1. Create .env:

    cp .env.local .env
  2. Create docker-compose.override.yml:

    cp docker-compose.override.yml.local docker-compose.override.yml
  3. Start containers:

    make up
  4. Open http://localhost:8124/ in a browser.