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’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Teams refactor #70

Merged
merged 5 commits into from
Feb 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
72 changes: 0 additions & 72 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,75 +1,3 @@
# 0.7.0 (2025-02-17)


### Bug Fixes

* :bug: fixing deleted workspaces being cached ([624b206](https://github.com/kaneo-app/app/commit/624b20676fedf1b1a5871f916a5c1d5c38a5d2cb))
* :bug: fixing overflowing workspace names ([0c2ab27](https://github.com/kaneo-app/app/commit/0c2ab2705d82c86ace8b4919c59d7773b63e989d))
* :bug: fixing route generation for vite ([73ddd6d](https://github.com/kaneo-app/app/commit/73ddd6d0138e9223921cbefdd727b2fa61408be0))
* :bug: remove unused import ([fa639e1](https://github.com/kaneo-app/app/commit/fa639e15e1c847d4ac89b7925fb2606b6e5900a4))
* :construction_worker: fixing build on pipeline ([767ba10](https://github.com/kaneo-app/app/commit/767ba103aca3beeda0a6f0a0df4459ce071f3b74))
* :green_heart: fixing formatting in package.json ([4644f0f](https://github.com/kaneo-app/app/commit/4644f0f6e3413591c9dd837a67df7cf8e735718e))
* :sparkles: format drizzle.config.ts ([cccd3ae](https://github.com/kaneo-app/app/commit/cccd3aea9420d4815501ec0d15ef1dc08a1f1b15))
* adding cursor button ([3b33c69](https://github.com/kaneo-app/app/commit/3b33c69f43c6adb6ad2e11284d20fb294941016b))
* adding dynamic view height on sidebar ([e7f4360](https://github.com/kaneo-app/app/commit/e7f4360eaf74b57eb8de48c2709ac4bfd418ee60))
* adding loading state for projects, sync ws when creating new tasks ([3977931](https://github.com/kaneo-app/app/commit/3977931ae07de1bcbf3ed1652ffead18b4469b2f))
* changing release branch ([3636788](https://github.com/kaneo-app/app/commit/3636788ca23bf418ef098fa2dad4c0da67f09d74))
* fixing build context ([fa736c5](https://github.com/kaneo-app/app/commit/fa736c5c60ac75b9a8d9a2f583c49b08d597d1cc))
* fixing long task titles ([8927a97](https://github.com/kaneo-app/app/commit/8927a971e5b53cbc69bf543efd8bb1d7fd00778e))
* fixing route selection and creating tasks with no asignee ([ae9bc8e](https://github.com/kaneo-app/app/commit/ae9bc8eebecc4786e3e7630432e9bc98cf03dd0f))
* improving padding for user info section ([4e904bf](https://github.com/kaneo-app/app/commit/4e904bfc8051c49c3468690ae99fbce5706d7fcf))
* improving scrolling on dnd ([17a54fd](https://github.com/kaneo-app/app/commit/17a54fdfcbcb9bc43efbe7dd05dd854872930ad9))
* listing web's nginx conf ([9ae5b32](https://github.com/kaneo-app/app/commit/9ae5b3209d84529c7edc482f118826502327dfe9))
* making settings not dependant on a workspaceId ([4a15188](https://github.com/kaneo-app/app/commit/4a15188bbdefa3cb8012f42f308bcd5cfae23882))
* making sidebar fixed ([6761a4f](https://github.com/kaneo-app/app/commit/6761a4f9930d8f2c77241f2041c4b338750f7665))
* making sidebar on mobile floating ([c3ba0e2](https://github.com/kaneo-app/app/commit/c3ba0e244a0d86a7390d97b145e0330b795d8410))
* refactoring publishing flow ([5471b88](https://github.com/kaneo-app/app/commit/5471b88ee244064b69853fd0a914cf32803f9f8f))
* removing unused import ([9466dc5](https://github.com/kaneo-app/app/commit/9466dc5d18e46d8f30000cf110ed255b53a3045d))
* removing unused packages ([20a8c66](https://github.com/kaneo-app/app/commit/20a8c6694d1e1bc345655a4b85a56bf7a981dc48))
* removing unused packages ([49ba8d1](https://github.com/kaneo-app/app/commit/49ba8d196d44715dd736ad3de4690a70686f46a3))
* removing unused packages ([de87b29](https://github.com/kaneo-app/app/commit/de87b298d00cddf7fff0799bcce7149beb7f2123))
* reseting zustand after sign out ([9352b9f](https://github.com/kaneo-app/app/commit/9352b9f77b10fbd37c1ad5557e3368ad27c1fdb1))
* task title was overflowing when too long ([9627cb3](https://github.com/kaneo-app/app/commit/9627cb3c25b30e6fb5287a32aebb32bf76ddface))
* updating docker context ([0bb17b5](https://github.com/kaneo-app/app/commit/0bb17b5d786c3ef110fbd16f08701b139bf39c7f))
* updating reamde ([d6d3ed8](https://github.com/kaneo-app/app/commit/d6d3ed8bf8cab3b9a27747c66c4d0ffdf9e2ba13))
* wrong z-index on modals ([2de17b8](https://github.com/kaneo-app/app/commit/2de17b8b1993d847a2f22a43891f2254b66ef3a2))


### Features

* :construction_worker: adding workflow to lint project ([382d6c5](https://github.com/kaneo-app/app/commit/382d6c5ef0a084d026a7238689f8a357fc05c5fa))
* :construction_worker: updating husky and commitlint ([33e2920](https://github.com/kaneo-app/app/commit/33e292027fea1d6dc4546a61b869f180e7d129e0))
* :construction_worker: updating workflow name ([f13d4ef](https://github.com/kaneo-app/app/commit/f13d4eff1c021be68b01c7381439d28629b6e22b))
* :fire: adding initial kanban board ([0e2734a](https://github.com/kaneo-app/app/commit/0e2734a4757722d753be398c9f7273b7fdfc1274))
* :fire: migrating to sessions, using file routes, adding auth provider ([d6f8ecc](https://github.com/kaneo-app/app/commit/d6f8ecce077e3fac67111e7585f81b6bd268d191))
* :sparkles: adding crud for workspaces ([faad3a4](https://github.com/kaneo-app/app/commit/faad3a49a327ed3cbee14d96a923997a5daf8bbd))
* :sparkles: adding marketing image ([841eee9](https://github.com/kaneo-app/app/commit/841eee9fcf4440370fdd95ee73731d591a6795b4))
* :sparkles: adding marketing image ([91ac6c1](https://github.com/kaneo-app/app/commit/91ac6c189ddc81535cf498abcfb8e63a8c32cead))
* :sparkles: adding marketing image ([e0dbd6b](https://github.com/kaneo-app/app/commit/e0dbd6bd41a440a0114e5c413d673601153d58a6))
* :sparkles: adding marketing image ([a8568c1](https://github.com/kaneo-app/app/commit/a8568c1f6d04685d387996448830b1fb166740e5))
* :sparkles: adding projects ([db2f600](https://github.com/kaneo-app/app/commit/db2f600d58ea45bf410f8b91de0577f969b2fbda))
* :sparkles: finishing authentication, adding color modes ([da9c10f](https://github.com/kaneo-app/app/commit/da9c10fa56ccf479977d3fad8a547d684067256d))
* :sparkles: finishing socket communication for tasks ([dcb8475](https://github.com/kaneo-app/app/commit/dcb84754b3bb970415bb7e16200224bef5271823))
* :sparkles: initial commit for projects ([200d9a6](https://github.com/kaneo-app/app/commit/200d9a6df400bab61bbc63f2a28dc3807da77606))
* :sparkles: updating logo design ([b8250e6](https://github.com/kaneo-app/app/commit/b8250e68fc3f8013b548750fb87140cb55811ac7))
* adding docker images and compose ([537b47e](https://github.com/kaneo-app/app/commit/537b47e328b8b5ee2ef1f0ffb71e78e8e3a42ee8))
* adding invites for users ([6f509ea](https://github.com/kaneo-app/app/commit/6f509ea85c76de40811282e673caa99ac174df69))
* adding multi platform build ([9e40708](https://github.com/kaneo-app/app/commit/9e407089a09f93c0a5ecc8296444f0d3f61f3400))
* adding pending invited users screen ([138dc70](https://github.com/kaneo-app/app/commit/138dc7084d9d30bc4a35e2ed94aed90e4c82dccc))
* adding project icons ([500783e](https://github.com/kaneo-app/app/commit/500783eb12a2fc64ff7e64d078638a4d4a16a0f2))
* adding project slugs ([e4cd25a](https://github.com/kaneo-app/app/commit/e4cd25a6b8c7bf6f6e3928b4dca6684270ed99a5))
* adding sensors for dnd ([3a9f2a9](https://github.com/kaneo-app/app/commit/3a9f2a91eaf7cc8c5f330c69cbf702aed0ab0def))
* adding settings page ([dd9ae8f](https://github.com/kaneo-app/app/commit/dd9ae8fd74008540c76caed0b7eed398ed408b54))
* changing cover image ([62cb2fb](https://github.com/kaneo-app/app/commit/62cb2fb88e9e42de923d68bdd889f87738757905))
* **create-turbo:** apply official-starter transform ([6fcda66](https://github.com/kaneo-app/app/commit/6fcda66be3d9e10f32705cd0a59d62eae0e8ef27))
* **create-turbo:** apply package-manager transform ([2aaf064](https://github.com/kaneo-app/app/commit/2aaf064f095549ad6600e89954aba9fc2c8385d9))
* **create-turbo:** create basic ([3b8654f](https://github.com/kaneo-app/app/commit/3b8654f88adfe575bdd6190af85ce8daeea7f810))
* finishing responsive-ness on manage teams screens ([bf5c55c](https://github.com/kaneo-app/app/commit/bf5c55c073f073e6be6fbcb0e3f5cb31a5b0c893))
* initial task edit setup ([2aacb26](https://github.com/kaneo-app/app/commit/2aacb262ab519eb1cc5e8c1a4aa3c1bcb9ba595c))
* making manage teams screens responsive ([e78f23c](https://github.com/kaneo-app/app/commit/e78f23ce379ceeb3e980095932b300e7ef409755))



# Changelog

All notable changes to this project will be documented in this file.
Expand Down
28 changes: 28 additions & 0 deletions apps/api/Dockerfile.local
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
FROM --platform=$BUILDPLATFORM oven/bun:1
WORKDIR /app

RUN apt-get update && apt-get install -y \
python3 \
make \
g++ \
&& rm -rf /var/lib/apt/lists/*

COPY package.json .
COPY bun.lockb .
COPY apps/api/package.json ./apps/api/package.json
COPY packages/typescript-config/package.json ./packages/typescript-config/package.json

RUN bun install --no-frozen-lockfile

COPY packages/typescript-config ./packages/typescript-config
COPY apps/api ./apps/api

RUN mkdir -p /app/apps/api/data && chmod 777 /app/apps/api/data

RUN touch /app/apps/api/data/kaneo.db && chmod 666 /app/apps/api/data/kaneo.db

RUN mkdir -p /app/apps/api/drizzle/meta && chmod -R 777 /app/apps/api/drizzle

EXPOSE 1337

CMD ["bun", "--watch", "/app/apps/api/src/index.ts"]
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ CREATE TABLE `project` (
`icon` text DEFAULT 'Layout',
`name` text NOT NULL,
`description` text,
`created_at` integer DEFAULT '"2025-02-09T21:03:20.815Z"' NOT NULL,
`created_at` integer DEFAULT '"2025-02-18T21:46:28.196Z"' NOT NULL,
FOREIGN KEY (`workspace_id`) REFERENCES `workspace`(`id`) ON UPDATE cascade ON DELETE cascade
);
--> statement-breakpoint
Expand All @@ -20,13 +20,13 @@ CREATE TABLE `task` (
`id` text PRIMARY KEY NOT NULL,
`project_id` text NOT NULL,
`number` integer DEFAULT 1,
`assignee_email` text NOT NULL,
`assignee_email` text,
`title` text NOT NULL,
`description` text,
`status` text DEFAULT 'to-do' NOT NULL,
`priority` text DEFAULT 'low',
`due_date` integer,
`created_at` integer DEFAULT '"2025-02-09T21:03:20.815Z"' NOT NULL,
`created_at` integer DEFAULT '"2025-02-18T21:46:28.196Z"' NOT NULL,
FOREIGN KEY (`project_id`) REFERENCES `project`(`id`) ON UPDATE cascade ON DELETE cascade,
FOREIGN KEY (`assignee_email`) REFERENCES `user`(`email`) ON UPDATE cascade ON DELETE cascade
);
Expand All @@ -36,7 +36,7 @@ CREATE TABLE `user` (
`name` text NOT NULL,
`password` text NOT NULL,
`email` text NOT NULL,
`created_at` integer DEFAULT '"2025-02-09T21:03:20.814Z"' NOT NULL
`created_at` integer DEFAULT '"2025-02-18T21:46:28.196Z"' NOT NULL
);
--> statement-breakpoint
CREATE UNIQUE INDEX `user_email_unique` ON `user` (`email`);--> statement-breakpoint
Expand All @@ -45,16 +45,17 @@ CREATE TABLE `workspace` (
`name` text NOT NULL,
`description` text,
`owner_email` text NOT NULL,
`created_at` integer DEFAULT '"2025-02-09T21:03:20.815Z"' NOT NULL,
`created_at` integer DEFAULT '"2025-02-18T21:46:28.196Z"' NOT NULL,
FOREIGN KEY (`owner_email`) REFERENCES `user`(`email`) ON UPDATE cascade ON DELETE cascade
);
--> statement-breakpoint
CREATE TABLE `workspace_member` (
`id` text PRIMARY KEY NOT NULL,
`workspace_id` text NOT NULL,
`user_email` text NOT NULL,
`role` text,
`joined_at` integer DEFAULT '"2025-02-09T21:03:20.815Z"' NOT NULL,
`role` text DEFAULT 'member' NOT NULL,
`joined_at` integer DEFAULT '"2025-02-18T21:46:28.196Z"' NOT NULL,
`status` text DEFAULT 'active' NOT NULL,
FOREIGN KEY (`workspace_id`) REFERENCES `workspace`(`id`) ON UPDATE cascade ON DELETE cascade,
FOREIGN KEY (`user_email`) REFERENCES `user`(`email`) ON UPDATE cascade ON DELETE cascade
);
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ CREATE TABLE `__new_project` (
`icon` text DEFAULT 'Layout',
`name` text NOT NULL,
`description` text,
`created_at` integer DEFAULT '"2025-02-11T18:12:00.369Z"' NOT NULL,
`created_at` integer DEFAULT '"2025-02-18T21:46:39.855Z"' NOT NULL,
FOREIGN KEY (`workspace_id`) REFERENCES `workspace`(`id`) ON UPDATE cascade ON DELETE cascade
);
--> statement-breakpoint
Expand All @@ -24,7 +24,7 @@ CREATE TABLE `__new_task` (
`status` text DEFAULT 'to-do' NOT NULL,
`priority` text DEFAULT 'low',
`due_date` integer,
`created_at` integer DEFAULT '"2025-02-11T18:12:00.369Z"' NOT NULL,
`created_at` integer DEFAULT '"2025-02-18T21:46:39.856Z"' NOT NULL,
FOREIGN KEY (`project_id`) REFERENCES `project`(`id`) ON UPDATE cascade ON DELETE cascade,
FOREIGN KEY (`assignee_email`) REFERENCES `user`(`email`) ON UPDATE cascade ON DELETE cascade
);
Expand All @@ -37,7 +37,7 @@ CREATE TABLE `__new_user` (
`name` text NOT NULL,
`password` text NOT NULL,
`email` text NOT NULL,
`created_at` integer DEFAULT '"2025-02-11T18:12:00.368Z"' NOT NULL
`created_at` integer DEFAULT '"2025-02-18T21:46:39.855Z"' NOT NULL
);
--> statement-breakpoint
INSERT INTO `__new_user`("id", "name", "password", "email", "created_at") SELECT "id", "name", "password", "email", "created_at" FROM `user`;--> statement-breakpoint
Expand All @@ -49,7 +49,7 @@ CREATE TABLE `__new_workspace` (
`name` text NOT NULL,
`description` text,
`owner_email` text NOT NULL,
`created_at` integer DEFAULT '"2025-02-11T18:12:00.368Z"' NOT NULL,
`created_at` integer DEFAULT '"2025-02-18T21:46:39.855Z"' NOT NULL,
FOREIGN KEY (`owner_email`) REFERENCES `user`(`email`) ON UPDATE cascade ON DELETE cascade
);
--> statement-breakpoint
Expand All @@ -60,12 +60,13 @@ CREATE TABLE `__new_workspace_member` (
`id` text PRIMARY KEY NOT NULL,
`workspace_id` text NOT NULL,
`user_email` text NOT NULL,
`role` text,
`joined_at` integer DEFAULT '"2025-02-11T18:12:00.369Z"' NOT NULL,
`role` text DEFAULT 'member' NOT NULL,
`joined_at` integer DEFAULT '"2025-02-18T21:46:39.855Z"' NOT NULL,
`status` text DEFAULT 'active' NOT NULL,
FOREIGN KEY (`workspace_id`) REFERENCES `workspace`(`id`) ON UPDATE cascade ON DELETE cascade,
FOREIGN KEY (`user_email`) REFERENCES `user`(`email`) ON UPDATE cascade ON DELETE cascade
);
--> statement-breakpoint
INSERT INTO `__new_workspace_member`("id", "workspace_id", "user_email", "role", "joined_at") SELECT "id", "workspace_id", "user_email", "role", "joined_at" FROM `workspace_member`;--> statement-breakpoint
INSERT INTO `__new_workspace_member`("id", "workspace_id", "user_email", "role", "joined_at", "status") SELECT "id", "workspace_id", "user_email", "role", "joined_at", "status" FROM `workspace_member`;--> statement-breakpoint
DROP TABLE `workspace_member`;--> statement-breakpoint
ALTER TABLE `__new_workspace_member` RENAME TO `workspace_member`;
27 changes: 18 additions & 9 deletions apps/api/drizzle/meta/0000_snapshot.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"version": "6",
"dialect": "sqlite",
"id": "49787b32-4e2b-4274-a0e2-d2784a178329",
"id": "b293274e-7c85-4fc2-b89c-16dc01c10984",
"prevId": "00000000-0000-0000-0000-000000000000",
"tables": {
"project": {
Expand Down Expand Up @@ -56,7 +56,7 @@
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-09T21:03:20.815Z\"'"
"default": "'\"2025-02-18T21:46:28.196Z\"'"
}
},
"indexes": {},
Expand Down Expand Up @@ -145,7 +145,7 @@
"name": "assignee_email",
"type": "text",
"primaryKey": false,
"notNull": true,
"notNull": false,
"autoincrement": false
},
"title": {
Expand Down Expand Up @@ -191,7 +191,7 @@
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-09T21:03:20.815Z\"'"
"default": "'\"2025-02-18T21:46:28.196Z\"'"
}
},
"indexes": {},
Expand Down Expand Up @@ -256,7 +256,7 @@
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-09T21:03:20.814Z\"'"
"default": "'\"2025-02-18T21:46:28.196Z\"'"
}
},
"indexes": {
Expand Down Expand Up @@ -308,7 +308,7 @@
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-09T21:03:20.815Z\"'"
"default": "'\"2025-02-18T21:46:28.196Z\"'"
}
},
"indexes": {},
Expand Down Expand Up @@ -355,16 +355,25 @@
"name": "role",
"type": "text",
"primaryKey": false,
"notNull": false,
"autoincrement": false
"notNull": true,
"autoincrement": false,
"default": "'member'"
},
"joined_at": {
"name": "joined_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-09T21:03:20.815Z\"'"
"default": "'\"2025-02-18T21:46:28.196Z\"'"
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'active'"
}
},
"indexes": {},
Expand Down
27 changes: 18 additions & 9 deletions apps/api/drizzle/meta/0001_snapshot.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"version": "6",
"dialect": "sqlite",
"id": "e2e57331-358c-4168-862a-fcbeb44be8b0",
"prevId": "49787b32-4e2b-4274-a0e2-d2784a178329",
"id": "6058e5ae-5394-46de-b3a1-edd4f121bb0d",
"prevId": "b293274e-7c85-4fc2-b89c-16dc01c10984",
"tables": {
"project": {
"name": "project",
Expand Down Expand Up @@ -56,7 +56,7 @@
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-11T18:12:00.369Z\"'"
"default": "'\"2025-02-18T21:46:39.855Z\"'"
}
},
"indexes": {},
Expand Down Expand Up @@ -191,7 +191,7 @@
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-11T18:12:00.369Z\"'"
"default": "'\"2025-02-18T21:46:39.856Z\"'"
}
},
"indexes": {},
Expand Down Expand Up @@ -256,7 +256,7 @@
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-11T18:12:00.368Z\"'"
"default": "'\"2025-02-18T21:46:39.855Z\"'"
}
},
"indexes": {
Expand Down Expand Up @@ -308,7 +308,7 @@
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-11T18:12:00.368Z\"'"
"default": "'\"2025-02-18T21:46:39.855Z\"'"
}
},
"indexes": {},
Expand Down Expand Up @@ -355,16 +355,25 @@
"name": "role",
"type": "text",
"primaryKey": false,
"notNull": false,
"autoincrement": false
"notNull": true,
"autoincrement": false,
"default": "'member'"
},
"joined_at": {
"name": "joined_at",
"type": "integer",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'\"2025-02-11T18:12:00.369Z\"'"
"default": "'\"2025-02-18T21:46:39.855Z\"'"
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"autoincrement": false,
"default": "'active'"
}
},
"indexes": {},
Expand Down
8 changes: 4 additions & 4 deletions apps/api/drizzle/meta/_journal.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,15 @@
{
"idx": 0,
"version": "6",
"when": 1739135000822,
"tag": "0000_conscious_golden_guardian",
"when": 1739915188203,
"tag": "0000_colorful_leech",
"breakpoints": true
},
{
"idx": 1,
"version": "6",
"when": 1739297520379,
"tag": "0001_safe_green_goblin",
"when": 1739915199865,
"tag": "0001_sparkling_jane_foster",
"breakpoints": true
}
]
Expand Down
Loading