Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
46 commits
Select commit Hold shift + click to select a range
7e55bf1
Update `prisma` and `@prisma/client`
hussein-m-kandil Nov 6, 2025
0717796
Fix vulnerability issues using `npm audit fix`
hussein-m-kandil Nov 6, 2025
8238ff9
Add prisma models needed for messaging app
hussein-m-kandil Nov 6, 2025
739d014
Extend users endpoints to create/include profile
hussein-m-kandil Nov 6, 2025
beddd21
Add endpoints to get profiles
hussein-m-kandil Nov 6, 2025
0f4867d
Add an endpoint to update profile data
hussein-m-kandil Nov 6, 2025
e448034
Add an endpoint to create a following
hussein-m-kandil Nov 8, 2025
5082724
Add an endpoint to delete a following
hussein-m-kandil Nov 8, 2025
f8716c5
Add an endpoint to get all profile following
hussein-m-kandil Nov 8, 2025
38082ed
Add an endpoint to get all profile followers
hussein-m-kandil Nov 8, 2025
d2f6243
Do not include user-profile in profile aggregation
hussein-m-kandil Nov 8, 2025
09bc384
Replace last-seen with creation date if invisible
hussein-m-kandil Nov 8, 2025
55d508c
Enhance user id extraction in profiles router
hussein-m-kandil Nov 8, 2025
b9fa9e6
Support profiles pagination and filtration
hussein-m-kandil Nov 8, 2025
72a84b0
Init chats route with an endpoint to create a chat
hussein-m-kandil Nov 9, 2025
97d5e4d
Add an endpoint to delete a profile's chat
hussein-m-kandil Nov 9, 2025
9cc2b1a
Add an endpoint to get profile's chats
hussein-m-kandil Nov 10, 2025
f75244c
Add an endpoint to get a profile's chat
hussein-m-kandil Nov 11, 2025
a3f8a21
Add an endpoint to get profile chat's messages
hussein-m-kandil Nov 11, 2025
11fe6f7
Add an endpoint to get a profile chat's message
hussein-m-kandil Nov 12, 2025
0dc5002
Mark returned messages as received by current user
hussein-m-kandil Nov 12, 2025
6432c40
Add endpoint to set message as seen by current user
hussein-m-kandil Nov 12, 2025
1e2bd4c
Include profiles have seen message with its data
hussein-m-kandil Nov 12, 2025
d765cb9
Init message's seen-by with sender on create chat
hussein-m-kandil Nov 13, 2025
4ef58d3
Apply profile's tangibility on message's seen-by
hussein-m-kandil Nov 13, 2025
6166ac4
Add an endpoint to create a message
hussein-m-kandil Nov 13, 2025
c84848a
Extend chat/message creation to accept an image
hussein-m-kandil Nov 15, 2025
ba4326a
Add middleware to update profile's last-seen date
hussein-m-kandil Nov 15, 2025
ceb1590
Add profile data to user returned from auth route
hussein-m-kandil Nov 26, 2025
5f2f406
Create users with profiles in database seed script
hussein-m-kandil Nov 30, 2025
e0756b5
Add endpoint to get chats with a certain profile
hussein-m-kandil Dec 8, 2025
f1e92b7
Identify chat's profile by unique name (username)
hussein-m-kandil Dec 10, 2025
0fb8401
Accept empty profile-IDs array to create self-chat
hussein-m-kandil Dec 9, 2025
f04f481
Respond with 404 if messages' chat is not found
hussein-m-kandil Dec 16, 2025
81c2ed4
Respond with 404 if not found chat member profile
hussein-m-kandil Dec 17, 2025
f69e454
Update dependencies & fix minor TypeScript issues
hussein-m-kandil Dec 25, 2025
8d02e09
Move seen/received from Message to Chat's profile
hussein-m-kandil Dec 25, 2025
6307c1f
Allow sending image-only messages in chats
hussein-m-kandil Jan 18, 2026
ee04aa0
Fix stats test
hussein-m-kandil Jan 30, 2026
02ae1bb
Fix chats test
hussein-m-kandil Jan 30, 2026
62ffdd9
Upgrade ESLint configuration
hussein-m-kandil Jan 30, 2026
5568516
Include fullname while filtrating profiles by name
hussein-m-kandil Jan 30, 2026
21fbe2b
Include current profile in return profiles
hussein-m-kandil Jan 30, 2026
b07b629
Return `followedByCurrentUser` flag with profile
hussein-m-kandil Jan 30, 2026
60ef264
Create/Delete follow by `profileId` URL param
hussein-m-kandil Jan 30, 2026
81e0ad9
Allow getting a profile by id or username
hussein-m-kandil Jan 31, 2026
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
47 changes: 25 additions & 22 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -2,27 +2,30 @@ import eslint from '@eslint/js';
import tseslint from 'typescript-eslint';
import stylistic from '@stylistic/eslint-plugin';
import pluginSecurity from 'eslint-plugin-security';
import { defineConfig, globalIgnores } from 'eslint/config';

export default tseslint.config({
ignores: ['dist'],
files: ['src/**/*.ts', 'prisma/seed/**/*.ts'],
extends: [
eslint.configs.recommended,
tseslint.configs.strictTypeChecked,
tseslint.configs.stylisticTypeChecked,
pluginSecurity.configs.recommended,
],
languageOptions: {
parserOptions: { project: true, tsconfigRootDir: import.meta.dirname },
export default defineConfig([
globalIgnores(['dist/']),
{
files: ['src/**/*.ts', 'prisma/seed/**/*.ts'],
extends: [
eslint.configs.recommended,
tseslint.configs.strictTypeChecked,
tseslint.configs.stylisticTypeChecked,
pluginSecurity.configs.recommended,
],
languageOptions: {
parserOptions: { project: true, tsconfigRootDir: import.meta.dirname },
},
plugins: { '@stylistic': stylistic },
rules: {
'@stylistic/semi': 'error',
'@typescript-eslint/no-explicit-any': 'error',
'@typescript-eslint/no-non-null-assertion': 'off',
'@typescript-eslint/no-unsafe-assignment': 'error',
'@typescript-eslint/no-confusing-void-expression': 'off',
'@typescript-eslint/restrict-template-expressions': 'off',
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
},
},
plugins: { '@stylistic': stylistic },
rules: {
'@stylistic/semi': 'error',
'@typescript-eslint/no-explicit-any': 'error',
'@typescript-eslint/no-non-null-assertion': 'off',
'@typescript-eslint/no-unsafe-assignment': 'error',
'@typescript-eslint/no-confusing-void-expression': 'off',
'@typescript-eslint/restrict-template-expressions': 'off',
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
},
});
]);
Loading