be-right-backend's People
be-right-backend's Issues
:fire: Use mailJet variables instead of injecting templates
📈 Refacto routes with wrapper and logger
🐛 Error SQL updateEventStatusJob on answer update
👷🏻 Add github action to deploy automaticly
https://fly.io/docs/app-guides/continuous-deployment-with-github-actions/
- 🚀 Auto deploy test env
- 🚀 Auto deploy dev env
- 🚀 Auto deploy Prod env
🗃️Caching api
♻️ Refacto User Entity and Employee Entity
Create authUser entity implements commun fields etc....
📤 Send mail with image Right to recipents
- Trouver un système d'envoie de mail
- système pour créer une signature
- dépends de la tache de double auth
📨 Send email on creation answer
✨ Create Bills entity
Chaque utilisateurs ou account owner peut avoir un certains nombre de factures qui lui sont liées.
- La facture est liée à un User owner
- elle comprend un address
- Une liste de champ précis et légals (siren, raison sociale, addresse de facturation).
- Elle doit être liée à un Panier (Cart entity)
🔁 Migration from typeOrm to Prisma
🔒 improve DB rules
Corsète unique rules for data relation
Ex: uniq pair employée.id & createdByUserId
- Évent user
- List user
- Answer event employee
⚡️ add send mail event completed on update status event job
✨ Implement payments
- Créer et enregistrer des payments avec Stripe.
- Si le paiement est validé, sauvgarder les infos de l'event
- Pouvoir créer des paniers
- factures
- pouvoir lier une addresse avec une facturation et/ou Panier
🩹RedisGetMany Bug
When getMany by ids and one of them is in redis, App send just data in redis, It should send all data asked
♻️ Refacto Jobs with better SQL filters
- deleteUnusedUsersJob
- udpateEventStatusJob
✨ Add reward badges
Ajouter des badges de récompenses drôles et fun comme sur steam.
les badges peuvent donner des récompenses :
-
codes promos
-
nb gratuits de destinataires
-
nb gratuits d’events
🚀 create permission entity and relations to improove scalability
⚡ optimize image size on upload doc
https://cloudinary.com/blog/image_optimization_for_websites_beautiful_pages_that_load_quickly
https://cloudinary.com/documentation/node_image_manipulation#image_optimizations
https://cloudinary.com/documentation/node_image_manipulation#converting_to_another_image_format
- When file upload is an picture convert to Web
- When file is pdf compresse it
✨ Create Cart Entity
🧾Liste de tâches OPS
- Ajuster les dockerfiles branche
Dockerfile-optimization
- Ajouter action pour créer une release lorqu'un tag est créé
- Automatiser les deploiements sur Fly.io / ou autre
♻️ Use Better SSE
🔧 Use Strict true in ts Config
✨ Payments implementation
- Créer et enregistrer des payments avec Stripe.
- Si le paiement est validé, sauvgarder les infos de l'event
- Pouvoir créer des paniers
- factures
- pouvoir lier une addresse avec une facturation et/ou Panier
Diviser cette features en plusieurs tâches
🚀 download PDF image right
🔐 Add session stored in cache for backend security
This PR should solve the authentication problem today based on the token sent in the request. the user must not be able to request information that is not his.
one solution is to use the JWTs and/or sessions by storing them in the cache
https://medium.com/better-programming/what-is-json-web-token-authentication-a2962f8c5267
https://www.bezkoder.com/node-express-vue-jwt-auth/
💡Créer une entité session avec un userId en relation. Et un date d'expiration. Soft delete lorsque ça expire. Et soit en crée une nouvelle (et supprime définitivement l'ancienne) au relogin soit restaure l'ancienne avec une mise à jours des champs.
✨ Send Mail To Raise an Answer CRON
Create Cron job to Send mail 5 or 10 days before start and End of event to every recipient who have not answered yet
✨ Add endpoint fetch data for answer event
🔒Securing app with salt as hash
During hash with secret in env to generate salt for users
✨ Manage notifications subscriptions
Create possibility to manage notification's subscriptions
- User can subscribe new type of notifications
- User can unsubscribe type of notifications
- User can subscribe again (in this case we can retrieved deleted subscriber to optimize DB size)
✨ employee list CSV import
✨ Send mail and notifications When event is completed
🔐 Filter secrets fields in User/employes/answer entities
✨ create lists of recipients
be able to create lists of recipients (as if the photo agency had several clients and therefore a list of recipients per client)
✨ Improove Download File workflow
👷🏻 run Jobs in CI in parallel
- Split tests
- replace test on node 14 -> 18
✨ Manage multi account
♻️ Split routes in folders
✨ Import Custom CSV
Maybe have modal or something which makes it possible to match the fields of the database and that of the csv of the user
Idea coded is : backend have, alone, to take translation of name of columns
- Tester cette feature
✨ Automatic event archiving
- archivage des événements à la main,
- archivage automatique à +1an
- Endpoint pour récupérer les events archivés
✨ Create Promocode entity
Voir si stripe ne propose pas cette fonctionnalité sinon
string $name;
string $description;
string $code; uniq
number $maxUses = null;
Date start
Date end
float $percentDiscount = null;
🧑💻 HMR Reload in docker
✨ Add New employee Fields
date de naissance
:arrow_up: Migrate V1 Fly to V2
🔐 Two factor authentification for signature
✨improve Import csv
- Import csv for create groupe
- Import csv for adding recipient
Make documentation for user : how to use csv import
Maybe have modal or something which makes it possible to match the fields of the database and that of the csv of the user
🧑💻 Implement New Notification interface
⬆️Update TypeORM version
🗺 Add Geocoding to addres entity
✨ Send notifications
Send notifications on :
- Creation Event
- Answer response
- Update Status Event
Multiple possibilities to send notifications:
- Socket.io realtime notifications sender
- On each page refetch notifications
- Only on login fetch notifications
- Send évent from backend
📚Documentations:
Socket.io :
- See how can we implement one table of notification/évent with !== data structure
Dependency Dashboard
This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.
Open
These updates have all been created already. Click a checkbox below to force a retry/rebase of any.
Ignored or Blocked
These are blocked by an existing closed PR and will not be recreated unless you click a checkbox below.
- Update dependency @antfu/eslint-config to ^0.43.0
- Update dependency pino to v8.19.0
- Update actions/setup-node action to v4
- Update dependency @antfu/eslint-config to v2
- Update dependency @types/node to v20
- Update dependency bullmq to v5
- Update dependency eslint-plugin-security to v2
- Update dependency puppeteer to v22
- Update dependency yup to v1
- Update postgres Docker tag to v16
Detected dependencies
docker-compose
docker-compose.yml
postgres 15
dockerfile
Dockerfile
github-actions
.github/workflows/CI-Test.yml
actions/checkout v4
pnpm/action-setup v2
actions/setup-node v3
actions/checkout v4
pnpm/action-setup v2
actions/setup-node v3
.github/workflows/fly.yml
actions/checkout v4
.github/workflows/release.yml
actions/checkout v4
npm
package.json
@antfu/utils ^0.7.7
axios ^1.6.7
better-sse ^0.11.0
bullmq ^3.15.8
class-transformer ^0.5.1
cloudinary ^2.0.1
cors ^2.8.5
crypto-js ^4.2.0
csvtojson ^2.0.10
dayjs ^1.11.10
dotenv ^16.4.2
express ^4.18.2
express-handlebars ^7.1.2
express-pino-logger 7.0.0
helmet ^7.1.0
ioredis ^5.3.2
jsonwebtoken ^9.0.2
multer ^1.4.4
node-cron ^3.0.3
node-mailjet ^6.0.5
pg ^8.11.3
pino 8.16.2
pino-pretty 10.3.1
puppeteer 21.11.0
redis ^4.6.13
reflect-metadata ^0.2.0
stripe ^14.16.0
ts-node 10.9.2
typeorm 0.3.20
uid2 1.0.0
uuid ^9.0.1
yup ^0.32.11
@antfu/eslint-config ^0.37.0
@jest/globals ^29.7.0
@types/cors ^2.8.17
@types/crypto-js ^4.2.2
@types/express ^4.17.21
@types/jsonwebtoken ^9.0.5
@types/multer ^1.4.11
@types/node ^18.19.15
@types/node-cron ^3.0.11
@types/uid2 0.0.2
eslint ^8.56.0
eslint-plugin-security ^1.7.1
jest ^29.7.0
supertest ^6.3.4
ts-jest ^29.1.2
typescript ^5.3.3
pnpm 8.15.4
- Check this box to trigger a request for Renovate to run again on this repository
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.