TaitoUnited / full-stack-template

Template for cloud-native applications and microservices running as containers/functions on Kubernetes, Docker Compose, or cloud. You can choose the stack during project creation.
https://taitounited.github.io/taito-cli/templates
MIT License
36 stars 8 forks source link

📠 New server implementation #174

Closed Temzasse closed 3 weeks ago

Temzasse commented 3 weeks ago

✨ What has changed?

This implements the new server with the following major changes:

Additionally updates client to be compatible with the new server implementation by changing the GraphQL queries/mutations a bit and implements proper login/logout.

keskiju commented 3 weeks ago

I fixed some things that were broken and made some improvements on the setup also.

Current implementation uses camelCase on database table names. That needs to be fixed so that snake_case is used in database and camelCase in code.

We also need to decide whether to use singular or plural database table names. I think plural is commonly more accepted convention. However, it may cause trouble with some ORMs or libs, or whenever there is some magic that determines database table names automatically from entity names. With singular naming we've traditionally used table name app_user as user was a reserved word, but looks like that is not an issue anymore (or perhaps never was) as long as the table name is in quotes ("user").

keskiju commented 3 weeks ago

I initialized a new project based on this branch. At least there the UI was a little bit quirky. The posts page didn't work after login, but it started working after refreshing the page couple of times.

keskiju commented 3 weeks ago

import { log } from '~/utils/log'; doesn't currently work on prod build. I think on some projects we've used module-alias for this, but it didn't seem to fix this. Since development works without problems, let's figure this out first on our newly created project and then copy-paste the solution back here.

Temzasse commented 3 weeks ago

import { log } from '~/utils/log'; doesn't currently work on prod build. I think on some projects we've used module-alias for this, but it didn't seem to fix this. Since development works without problems, let's figure this out first on our newly created project and then copy-paste the solution back here.

This should be now fixed by using tsc-alias during prod build.

keskiju commented 3 weeks ago

I'm probably gonna go for a little bit different folder structure on the project a just created. Let's decide later if it's suits the template or not.

Temzasse commented 3 weeks ago

I initialized a new project based on this branch. At least there the UI was a little bit quirky. The posts page didn't work after login, but it started working after refreshing the page couple of times.

This has been fixed.