DEV Community

Cover image for Build Cool APIs In Express and TypeScript

Build Cool APIs In Express and TypeScript

gentritabazi01 profile image Gentrit Abazi ãƒŧ2 min read

Node is a run-time environment that makes it possible to write server-side JavaScript. It has gained widespread adoption since its release in 2011. Writing server-side JavaScript can be challenging as a codebase grows due to the nature of the JavaScript language; dynamic and weak typed.

Developers coming to JavaScript from other languages often complain about its lack of strong static typing, but this is where TypeScript comes into the picture – to bridge this gap.

TypeScript is a typed (optional) super-set of JavaScript that can help with building and managing large-scale JavaScript projects. It can be thought of as JavaScript with additional features like strong static typing, compilation, and object-oriented programming.

How we start a new Express and TypeScript project?

The main idea is how to build applications with Express and TypeScript ðŸĪ” ?

In Kutia we have created a project starter that allows you to have all the right configurations and just start dealing with business logic and not waste time on project configurations ðŸĪŠ.

What are the features of this project starter?

Some of features that project contains are:

Beautiful Code 🚀.
Dependency Injection âĪïļ.
Simplified Database Query 👌.
Clear Structure with different layers such as controllers, services, repositories, models, middlewares 🙋‍♂ïļ.
Easy Exception Handling 👋.
Smart Validation ✔ïļ.
Easy event dispatching 😍.
Fast Database Building with migrations 😜.
Easy Data Seeding with our own factories 🍏.
Auth System 🚗.
Docker ðŸģ.
Class-based to handle WebSocket events 🎉.
Class-based to handle Cron Jobs 💞.
API Documentation 📝.
GraphQL 📈.
Queue Jobs 🚧.

How to install the starter project?

You can check all details of a project on GitHub, but to install a project in a short way, you need to: Clone from GitHub, Run npm install and npm run dev.

Now what?

Now you have a project with Scalable structure, Error handling, Authentication, etc.

Also, you are ready to connect your API with cool javascript clients using the latest sexy frameworks.

Original Article

Discussion (0)

Forem Open with the Forem app