Why Theodo is investing in an admin for NestJS

August 29, 2019Sam Bunce2 min read

thumbnail

Why we love NestJS

We like NestJS at Theodo because we find it to be the most versatile and easy-to-use Node.js framework for fast, impactful projects. The majority of our frontends are built in React, so using NestJS allows us to leverage full-stack Typescript, helping bridge the gap between frontend and backend for a much better dev experience and fewer bugs.

Why we're investing in an admin

At Theodo we've built a lot of projects using Django. There’s several reasons for this, but one of the main ones is that Django provides a generic admin site out-of-the-box, which can be used for administrative CRUD operations on all your models (entities in NestJS), before you have to write a single endpoint. Our clients love the functionalities and ease of use of the admin, and it costs almost zero dev time to set up, saving a lot of boilerplate work for developers.

What if we could apply the same principle to NestJS? Instead of building a new admin for each project, using a generic interface which could handle most administrative operations would save hours of developer time and allow us to deliver value to our clients even faster. Right now, we favour Django over NestJS, but we believe that NestJS is the way forward and want to bridge the gap in functionality between a mature framework like Django and the new player NestJS, which is what led to our contribution towards nestjs-admin.

Our hope is that it will help us to build our NestJS projects faster than ever before, and by investing in open-source, we can share those benefits with the NestJS community.

What we're doing

We've taken a lot of inspiration from django-admin in our approach so far. If successful, we should build an admin that is easy to use, efficient and extensible. The goal for this iteration is to have an admin which can consistently do the basics:

  • CRUD Operations
  • Practical Authentication
  • Usable without any specialist knowledge
  • Easy to install & set up on a project

We're currently working on an MVP which has the features listed above. We think this is the minimum required for the library to be ready to use in production projects. From here, we want to see how our teams and others use it, to guide the next stages of development.

If you’re interested in our NestJS work, check out our website.

Sam Bunce

Sam Bunce

Full-stack developer at Theodo UK