Developer Community Platform Angular (Web) 🎉
Home
GitHub
Home
GitHub
  • Setup & Development
  • Technologies
  • Architecture
  • API
  • Database
  • Security
  • Testing
  • Benchmarking
  • Deployment
  • Troubleshooting
  • FAQ
  • Convention

    • Naming cheatsheet
    • TypeScript Style Guide and Coding Conventions
    • Clean code Typescript
    • Branch conventions
    • Commit conventions
    • Linting & Formatting

Technologies

List of technologies (framework, dependencies and tools) used in the project.


  • Core Technologies
    • Angular
  • Frameworks and Libraries
    • TypeScript
  • Authentication and Authorization
    • JWT (jsonwebtoken)
    • SuperTokens
  • Validation and Parsing
    • class-validator
    • class-transformer
  • Logging and Monitoring
    • Amplitude
    • Instabug
  • Testing
    • Jest
    • Cypress
    • StoryBook
  • Package Management
    • PNPM
  • Linting and Formatting
    • ESLint
    • Prettier
  • Git Hooks and Commit Management
    • Husky
    • Commitlint
    • Commitizen
    • Lint-staged
  • DevOps and CI/CD
    • GitHub Actions
    • Docker
    • Dependabot
  • Documentation
    • Markdown
    • VuePress
  • Miscellaneous
    • Vercel
    • env-cmd
  • Conclusion

Core Technologies

We utilize the following frameworks for our backend development to create scalable and maintainable server-side applications.

Angular

Angular is a TypeScript-based framework for building dynamic web applications. Developed by Google, it provides a comprehensive solution for creating single-page applications (SPAs) with features like data binding, dependency injection, and modular architecture, which help in building scalable and maintainable applications.

Frameworks and Libraries

TypeScript

A superset of JavaScript that adds static types, enhancing code reliability and maintainability.

Authentication and Authorization

JWT (jsonwebtoken)

A library for working with JSON Web Tokens, aiding in user authentication and authorization.

SuperTokens

SuperTokens is an open-source authentication solution designed to simplify user authentication and authorization for web and mobile applications. It provides features such as single sign-on (SSO), multi-factor authentication (MFA), and session management, and can be integrated with various frontend and backend technologies to enhance security and user experience

Validation and Parsing

class-validator

A library for input validation and sanitization based on decorators and metadata reflection.

class-transformer

A library for object transformation and serialization using decorators and reflection.

Logging and Monitoring

Amplitude

Amplitude is a product analytics platform that helps businesses track and analyze user behavior and engagement across their digital products. It provides insights into user interactions, enabling companies to understand how users navigate their apps or websites, measure the impact of features, and make data-driven decisions to improve user experience and drive growt

Instabug

Instabug is a bug and feedback reporting tool for mobile and web applications. It allows users to capture and report bugs, crashes, and feedback directly from within the app, providing developers with detailed information, screenshots, and session recordings to facilitate faster and more accurate debugging and resolution.

Testing

Jest

A comprehensive testing framework for JavaScript, supporting unit, integration, and end-to-end testing.

Cypress

A library for doing e2e tests, allowing you to make fully functional automated tests.

StoryBook

A storybook is a tool used to create and document UI components in isolation. It allows developers to build, test, and showcase components independently from the rest of the application, making it easier to develop, debug, and share UI elements.

Package Management

PNPM

A fast, disk space-efficient package manager for JavaScript, improving the installation process and dependency management.

Linting and Formatting

ESLint

A pluggable linting utility for JavaScript and TypeScript, helping to identify and fix code quality issues.

Prettier

An opinionated code formatter that enforces consistent style by parsing code and reprinting it with its own rules.

Git Hooks and Commit Management

Husky

A tool for managing Git hooks, allowing you to run scripts during various Git stages.

Commitlint

A tool for linting commit messages, ensuring they adhere to a conventional format.

Commitizen

A command-line tool for formatting commit messages according to the conventional commit standard.

Lint-staged

A tool for running linters on staged files, ensuring that only clean code is committed.

DevOps and CI/CD

GitHub Actions

A CI/CD service that automates workflows, allowing you to build, test, and deploy your code directly from GitHub.

Docker

A platform for developing, shipping, and running applications in containers, providing an efficient and consistent environment for deployment.

Dependabot

A tool for automating dependency updates, keeping your project up-to-date with the latest versions.

Documentation

Markdown

A lightweight markup language with plain-text formatting syntax, used for writing documentation and README files.

VuePress

A static site generator that simplifies the creation of documentation sites, providing a clean and responsive design.

Miscellaneous

Vercel

Vercel is a cloud platform for frontend developers that provides seamless deployment and hosting for web applications. It integrates with popular frameworks like Next.js, allowing for easy continuous deployment, automatic scaling, and global CDN distribution to optimize performance and speed.

env-cmd

A utility for executing commands using environment variables from a file, simplifying the management of environment configurations.

Conclusion

These tools and frameworks are integral to our development process, ensuring that we can build high-quality, scalable, and maintainable software efficiently.

Edit this page
Last Updated:
Contributors: Dejan Radmanovic
Prev
Setup & Development
Next
Architecture