Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

馃帀 We (almost) have an example app - Meet practica.js #1175

Open
goldbergyoni opened this issue Jun 2, 2022 · 3 comments
Open

馃帀 We (almost) have an example app - Meet practica.js #1175

goldbergyoni opened this issue Jun 2, 2022 · 3 comments

Comments

@goldbergyoni
Copy link
Owner

goldbergyoni commented Jun 2, 2022

馃コHappy announcement here馃巿

TL&DR

We are working hard on an example app that is based on this guide. It's in Alpha mode, not production-ready yet, but your constructive feedback is more than welcome. It's called practica.js, visit here

Why is this unique and maybe the preferred option for new Node.js apps? Read below 馃憞


What

For years, we have received repeating feedback here - "Can you show an example app?"

It took a while, mostly because we wanted to nail it properly, but now we're almost ready now 馃帀馃憞

Meet practica.js - Our Node.js best practices code generator that is built around the principles of this guide

It's currently 0.0.1@alpha.1, not ready for production, some parts are still not coded (e.g. logger is doing console.log:)), but already has 400 commits and 17 contributors. We'll be grateful to have your constructive feedback

Basically, it generates a skeleton code that shows API requests traveling through the layers including DB and testing. it's not a new framework but rather using the popular and great (!) Node.js frameworks like Fastify, express and probably Nest in the future

Given these great frameworks and the existence of many starters, why do we need another one 馃槼? Here is its unique value:

Why

Unique value 1 - Production ready

It's Production ready (soon). Great frameworks by definition don't handle everything. express lacks basic features like auth, logger... Even richer frameworks lack Monorepo setup, hardened .dockerfile, real-world testing template with DB, and 100+ more things that EVERYONE NEED

on-top-of-frameworks

Unique value 2- Simpler architecture

Simplicity as a key architectural principle. We believe that tons of unnecessary complexity finds its way to most software which becomes a strategic maintenance obstacle. Consequently, Practica minimizes abstractions, relies on JS/Node standards, is built mostly around plain function, uses TypeScript for types only, favors the simple 3-tier architecture over fancy hexagonal/clean structure to name a few examples. When you read it, everything should look highly familiar and... simple

abstractions-vs-simplicity

Why trust our design - One of the key reason you want to consider Practica is because you appreciate our design. But why? Because of the process, not the people. Every decision is neatly documented, all the options are compared transparently, the community is involved which leads to better collaborative decisions. Here is an example of a typical decision making for a monorepo tooling

Screen Shot 2022-06-02 at 1 22 55 PM

@goldbergyoni
Copy link
Owner Author

@josh-hemphill You're more than welcome to join as a maintainer. This is where we code all of our ideas, could be awesome if you handle all the security things

@rluvaton
Copy link
Collaborator

Great job! I think we should pin this issue 馃槃

@goldbergyoni
Copy link
Owner Author

@rluvaton We will, just need to feel more confident that Practica is a little bit more ready

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants