clevertech / boilerplate Goto Github PK
View Code? Open in Web Editor NEWClevertech boilerplate for projects based on Docker, Node.js and React
License: MIT License
Clevertech boilerplate for projects based on Docker, Node.js and React
License: MIT License
Getting an errors when running the boilerplate project out of the box.
See project here: https://github.com/natron2244/cleverapp
Create log: create-logs.txt
docker/run log: docker-run-logs.txt
Developers and engineers should never reinvent the wheel.
Consider using CookieCutter or even Github repo templates
Saving time and resources
module.exports = {
webpack: (config, options) => {
if (!options.isServer && !options.dev) {
config.optimization.splitChunks.cacheGroups.babel = {
chunks: 'all',
name: 'babel',
test: /[\\/]node_modules[\\/](@babel|regenerator-runtime)[\\/]/
};
}
return config;
}
);```
Right now there's a fake authentication system. We should implement a react UI and backend using https://github.com/clevertech/CleverAuth/tree/master/core
Something like this:
https://github.com/clevertech/authentication-service
CleverAuth is a library extracted from that project โ๏ธ
Now we want to use the library in the boilerplate, but you can take a look to the authentication-service project to have an idea about the UI options, workflow and configuration settings.
Using Passport.js and Redis:
Pick token storage method:
docker-compose has problems with project names with dashes.
docker/compose#869
One way to fix this is to just remove the dashes when the project name is replaced here: https://github.com/clevertech/boilerplate/blob/master/docker/run#L5
There's a script that clones the project and replaces the name of the project in multiple files: https://github.com/clevertech/boilerplate/tree/create-boilerplate-app
for docker/run
it should remove the dashes
Right now we are expecting these host names to detect what configuration we need to apply:
boilerplate/frontend/src/config.js
Line 26 in ffde8e8
dev : dev-<random>.example.com
staging: stage-<random>.example.com
But the new patter should be:
dev : <whatever>-dev-<random>.example.com
staging: <whatever>-stage-<random>.example.com
So instead of getting the first word of the hostname, we need to pick the penultimate (arr[arr.length - 2]).
Modify api/Dockerfile to use alphine-10
I suggest passport due to the flexibility of being able to eventually support saml, oauth, openid, 2fa, fido u2f, and more.
Basic UI with minimal styling using the UI scaffolding
Unit test coverage might already be at 100%, but integration test coverage is at 0
There's been lots of isolated unit testing and development happening on the steps and modules in the CBA script. The CBA script needs to be run and we need to fix all issues that prevent us from:
The above is the acceptance criteria. Generally, the modules lacking integration will be a significant barrier to having this work, and will need to be addressed piece by piece.
Add subtickets as necessary
I propose to use official alpine images for postgres & redis
The correct pattern should be:
{
baseDir: '...'
base: {
prompt: {
...
}
}
stack: {
prompt: {
...
}
}
admin: {
prompt: {
...
}
}
Maybe we can make it optional. But... for now let's make it default
I think this is a legacy file that has managed to remain in the boilerplate over time and serves no purpose?
https://github.com/clevertech/boilerplate/blob/master/frontend/Dockerfile-prod
Note: I'm talking about the CBA code here: https://github.com/clevertech/create-boilerplate-app
There are several unit tests that are just "TODO" in the boilerplate code. These tests specify the functionality that was in the old boilerplate code and should be implemented.
Additionally there are failing unit tests associated with WIP tests which need to be made to pass.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.