Turuq Onboarding

Backend I

This section covers the essential backend technologies and architecture you'll be working with. Review these documents to understand our server-side infrastructure and development practices.

Node.js

We primarily use Node.js for our backend development. Node.js is a JavaScript runtime built on Chrome's V8 JavaScript engine. It is lightweight and efficient, making it an excellent choice for building scalable network applications. Node.js Documentation

TypeScript

We use TypeScript to write our Node.js applications. TypeScript is a superset of JavaScript that adds optional static typing to the language. This helps us catch errors early in the development process and write more maintainable code. You can learn more about TypeScript in the TypeScript Documentation.

Networking & HTTP

Node.js provides powerful built-in modules for handling network operations and working with HTTP. Understanding these core concepts is essential for building web servers, APIs, and other network-dependent applications. In our case, we rely on express.js, a popular web framework for Node.js, to build our APIs. You can learn more about express.js in the Express Documentation.

Middleware

An essential concept in express.js is middleware. Middleware functions are functions that have access to the request object (req), the response object (res), and the next middleware function in the application's request-response cycle. They can perform tasks like parsing request bodies, handling authentication, and logging requests. You can learn more about middleware in the Express Middleware Documentation.

Validation

Ensuring that the data sent to our APIs is valid is crucial for maintaining data integrity and security. We use libraries like Zod to validate incoming requests and ensure that they meet our requirements.

Zod

Zod is a TypeScript-first schema declaration and validation library. It allows us to define the shape of our data and validate it against those definitions. You can learn more about Zod in the Zod Documentation

Authentication & Authorization

Ensuring that our APIs are secure and only accessible to authorized users is a top priority. We use industry-standard practices like JSON Web Tokens (JWT) for authentication and authorization. We invoke middleware functions to verify JWT tokens and restrict access to certain routes based on user roles and permissions. You can learn more about using middleware in express.js for authentication in the Express Middleware Documentation.

Additional Reading Material

Third Party-Auth

Check out Clerk!

On this page