Skip to content

Sairyss/fullstack-starter-template

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Full stack starter template

Monorepository TypeScript template for full stack applications.

  • Maximized for productivity
  • Based on cutting edge technologies
  • Follows best practices for project structure, architecture, security
  • Includes authentication/authorization module (OAuth2)

Libraries/frameworks

This template includes a bunch of libraries to get you up and running quickly and improve your developer experience.

Frontend

Backend

  • Fastify - fast web framework for NodeJS
  • Prisma - new generation ORM for working with relational databases
  • Zod - TypeScript-first schema validation with static type inference
  • dotenv - to load your configs from an .env file
  • env-var - validate and sanitize your environmental variables

Shared libraries

  • tRPC - Remote Procedure Calls for your TypeScript applications. Move faster by removing the need of a traditional API-layer.
  • NX - build system with first class monorepo support and powerful integrations
  • Jest - testing framework
  • Eslint - static code analysis for identifying problematic patterns found in your code

Starting the app

  • Clone the repository
  • Copy .env.example and rename to .env
  • npm run docker:env - setup the database (postgresql) in docker
  • npm install - install dependencies
  • npm run migrate:dev - run migrations to create tables
  • npm run backend:dev - run backend
  • npm run frontend:dev - run frontend

Scripts

  • npm run frontend:storybook - start storybook to develop components in isolation
  • npm run dep-graph - see dependency graph
  • For more commands check package.json
  • To generate new apps in the monorepo, check out NX documentation.

Check out my other repositories

  • Domain-Driven Hexagon - Guide on Domain-Driven Design, software architecture, design patterns, best practices etc.
  • Backend best practices - Best practices, tools and guidelines for backend development.
  • System Design Patterns - list of topics and resources related to distributed systems, system design, microservices, scalability and performance, etc.

About

Template for full stack applications based on TypeScript, React, Vite, ChakraUI, tRPC, Fastify, Prisma, zod, etc.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages