Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
220 commits
Select commit Hold shift + click to select a range
82dc058
Merge pull request #1 from moritzWa/simon/research-endpoint-stubs
moritzWa Mar 17, 2025
1eeaf97
cleanup
moritzWa Mar 17, 2025
0b943f2
seeder
moritzWa Mar 17, 2025
04cac58
some layout
moritzWa Mar 17, 2025
e7cca55
more layout
moritzWa Mar 17, 2025
dc1f4b2
fix form logic
moritzWa Mar 17, 2025
6170950
layout
moritzWa Mar 17, 2025
ece0fdb
grid dark mode
moritzWa Mar 17, 2025
9713718
cursor rule
moritzWa Mar 17, 2025
13356f2
table editing
moritzWa Mar 17, 2025
741d46f
table error page
moritzWa Mar 17, 2025
f840ed4
cursor rule
moritzWa Mar 17, 2025
a2ec6e8
url rendering
moritzWa Mar 17, 2025
c6f82e5
start column settings
moritzWa Mar 17, 2025
a366b1d
better deleet
moritzWa Mar 17, 2025
6764da9
persistant col settings
moritzWa Mar 17, 2025
2525198
start context menu
moritzWa Mar 17, 2025
49bab92
add context menu functionality
moritzWa Mar 17, 2025
7e57a70
fix db query
moritzWa Mar 18, 2025
e2fe357
fix col logic
moritzWa Mar 18, 2025
0958de9
convert to bun
SimonBerens Mar 18, 2025
662bd85
migrate to new version and improve header
moritzWa Mar 18, 2025
62e2544
Merge pull request #2 from moritzWa/simon/bun-refactor
SimonBerens Mar 18, 2025
f436862
packag stuff
moritzWa Mar 18, 2025
20bca40
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Mar 18, 2025
1d1f7d7
fix ts and improve cursor rule
moritzWa Mar 18, 2025
3969f60
cleanup
moritzWa Mar 18, 2025
edb8068
fix css
moritzWa Mar 18, 2025
9a961f2
styling
moritzWa Mar 18, 2025
88c8c1d
start col order
moritzWa Mar 18, 2025
15e1528
bun x cursor
moritzWa Mar 18, 2025
c4fb423
fix col moving
moritzWa Mar 19, 2025
31e3579
cleanup
moritzWa Mar 19, 2025
1529c09
cleanup
moritzWa Mar 19, 2025
b2673ba
insert col logic
moritzWa Mar 19, 2025
eaff54d
start delete
moritzWa Mar 19, 2025
c959e44
cleanup
moritzWa Mar 19, 2025
14cfdb5
add rows logic
moritzWa Mar 19, 2025
893fc89
cleanup packages
moritzWa Mar 19, 2025
1d8e8c0
cleanup
moritzWa Mar 19, 2025
0b59e3b
start code cleanup
moritzWa Mar 19, 2025
119ce6f
eslint cleanup
moritzWa Mar 19, 2025
8163b91
nice error page
moritzWa Mar 19, 2025
7791ffb
remove dotenv
SimonBerens Mar 18, 2025
a8d9a10
add evals
SimonBerens Mar 19, 2025
84a262a
bruh
SimonBerens Mar 19, 2025
a0c446c
Merge pull request #3 from moritzWa/simon/doppler-and-testing
SimonBerens Mar 19, 2025
97006b1
cleanup scripts
moritzWa Mar 19, 2025
5d982c7
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Mar 19, 2025
5ef3af0
fix resizing
moritzWa Mar 19, 2025
23bfdb5
bunny
moritzWa Mar 19, 2025
f1dee9b
fix payments api version
moritzWa Mar 19, 2025
d57bd19
add cell selection
moritzWa Mar 19, 2025
3325ec9
make fill cell endpoint
SimonBerens Mar 19, 2025
62bc52d
fmt
SimonBerens Mar 19, 2025
0b04a4b
Merge pull request #4 from moritzWa/simon/call-apis-on-cell-fill
SimonBerens Mar 19, 2025
359a25a
start enriching client logic
moritzWa Mar 19, 2025
e3da5be
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Mar 19, 2025
3653454
fix enrich logic
moritzWa Mar 19, 2025
3d2aa9c
fix ts
moritzWa Mar 20, 2025
86349ac
logging
moritzWa Mar 20, 2025
9c22b4d
logging
moritzWa Mar 20, 2025
0c12914
fix col menu
moritzWa Mar 20, 2025
6c83a98
start passing correct grid data to fillCell
moritzWa Mar 20, 2025
0369a35
prettier
moritzWa Mar 20, 2025
5ca03f3
make prettier work
moritzWa Mar 20, 2025
780a369
make cell filling work
moritzWa Mar 20, 2025
9f96903
better col menu
moritzWa Mar 20, 2025
0c8f032
make single sell work
moritzWa Mar 20, 2025
0ee9c79
improve prompt
SimonBerens Mar 20, 2025
9fb1e39
install
SimonBerens Mar 20, 2025
f0701b0
Merge pull request #5 from moritzWa/simon/specific-column-prompts
SimonBerens Mar 20, 2025
3d0ce36
make multi cell multi col work
moritzWa Mar 20, 2025
a83ac0f
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Mar 20, 2025
63864ad
cleanup code
moritzWa Mar 20, 2025
e4950cd
cleanup code
moritzWa Mar 20, 2025
a063d3a
refactor to make one api request per cell
moritzWa Mar 20, 2025
875cbdc
parallel calls
moritzWa Mar 20, 2025
72d910b
make it update cell on data return
moritzWa Mar 20, 2025
87c85ac
get fill cell working
SimonBerens Mar 20, 2025
a274ce6
make enriching loading state work
moritzWa Mar 20, 2025
3b8eff6
better selection ui
moritzWa Mar 20, 2025
06ed000
fix waitlist logic
moritzWa Mar 21, 2025
976ea08
better landing page
moritzWa Mar 21, 2025
79f11db
improve lp
moritzWa Mar 21, 2025
f51914b
fix eslint deploy log
moritzWa Mar 21, 2025
5ceeca4
polish
moritzWa Mar 22, 2025
381a4f4
make mobile friendly
moritzWa Mar 24, 2025
d63560a
hmm
SimonBerens Mar 25, 2025
993807f
Merge pull request #6 from moritzWa/simon/row-generation
SimonBerens Mar 25, 2025
d484638
try fixing server error
moritzWa Mar 26, 2025
d5483ca
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Mar 26, 2025
24c302b
try fix
moritzWa Mar 26, 2025
17e0764
try fix enterprise module error
moritzWa Mar 26, 2025
216ac1b
try fix enterprise module error
moritzWa Mar 26, 2025
b71d498
enterprise module
moritzWa Mar 26, 2025
b5050a8
fix types
moritzWa Mar 26, 2025
6a49e8e
start migrating types
moritzWa Mar 26, 2025
50bbfc7
more type conversion
moritzWa Mar 26, 2025
f99430f
use structured response
Mar 26, 2025
6fdfe52
cursor refactor
Mar 26, 2025
9a3bccb
structured outputs
Mar 26, 2025
50af222
remove unused imports
Mar 26, 2025
a793e95
rebase
Mar 26, 2025
a824cb8
remove
Mar 26, 2025
d7cd982
Merge pull request #7 from moritzWa/simon/structured-output
SimonBerens Mar 26, 2025
a9346ec
cleanup seeder
moritzWa Mar 26, 2025
f097b98
cleanup seeder
moritzWa Mar 26, 2025
83d1440
new seeder
moritzWa Mar 26, 2025
acf9281
naming
moritzWa Mar 26, 2025
a3b5766
fix
moritzWa Mar 26, 2025
1c138bc
improve prompt
moritzWa Mar 26, 2025
3472597
fix logging
moritzWa Mar 26, 2025
ba634d6
sci fi movies
moritzWa Mar 26, 2025
02c864c
react tables
moritzWa Mar 26, 2025
d382ef5
react tables
moritzWa Mar 26, 2025
d2909bf
fix sidebar state not saved
moritzWa Mar 26, 2025
7af3040
cleanup
moritzWa Mar 26, 2025
c594034
sidebar options
moritzWa Mar 27, 2025
02697fd
fix warning and improve routing
moritzWa Mar 27, 2025
eedef44
edit table in header
moritzWa Mar 27, 2025
cadfeae
start upload logic
moritzWa Mar 27, 2025
dc4fb15
start new upload ui
moritzWa Mar 27, 2025
14a16c8
toast if empty selection to reduce confusion
moritzWa Mar 27, 2025
3699832
start debugging col creation
moritzWa Mar 27, 2025
e9cb72b
fix module import client error
moritzWa Mar 27, 2025
8ba47bf
setup eval
Mar 27, 2025
78a0374
refactor
Mar 27, 2025
c4ec067
react table eval
Mar 27, 2025
3247676
Merge pull request #8 from moritzWa/simon/auto-eval
SimonBerens Mar 27, 2025
5702b48
fix col creation bug
moritzWa Mar 27, 2025
c76d6ec
fix enterprise module support
moritzWa Mar 27, 2025
eb87b1f
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Mar 27, 2025
1e4a51d
cursor refactor
Mar 27, 2025
8946efe
improve descriptions
Mar 27, 2025
3418107
table descriptions
Mar 27, 2025
0a90c93
fix enterprise module support error finally actually I think
moritzWa Mar 27, 2025
aaa60ae
sorry for the back and forth - working locally now
moritzWa Mar 27, 2025
b7263f0
fix
moritzWa Mar 27, 2025
ba26012
cleanup sidebar
moritzWa Mar 27, 2025
2f60632
improve evals
Mar 27, 2025
e33b9d2
improve evals
Mar 28, 2025
4403886
Merge pull request #9 from moritzWa/simon/required-descriptions
SimonBerens Mar 28, 2025
6b631ec
add col def logic and ui input
moritzWa Mar 28, 2025
c8dedaf
col def changing server part
moritzWa Mar 28, 2025
ea2d5e2
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Mar 28, 2025
247184f
fix ts
moritzWa Mar 28, 2025
02a0d04
fix api bug
moritzWa Mar 28, 2025
fbdde8f
fix ts
moritzWa Mar 28, 2025
58e4e1c
comment out
moritzWa Mar 28, 2025
bace660
rm login
moritzWa Mar 28, 2025
52cbf06
start
moritzWa Mar 28, 2025
aefb40b
chase urls to compare more accurately
Mar 28, 2025
e322a39
Merge pull request #10 from moritzWa/simon/url-chasing
SimonBerens Mar 28, 2025
ee22ea6
parse and upload csv
moritzWa Mar 28, 2025
b9d4a1f
fix sidebar truncate
moritzWa Mar 28, 2025
25ea3ba
fix lp text
moritzWa Mar 28, 2025
db9e8ae
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Mar 28, 2025
29dc2ad
fix not loading on first link render bug
moritzWa Mar 29, 2025
50e016a
cleanup code
moritzWa Mar 29, 2025
de53bfc
fix bun
moritzWa Mar 31, 2025
6310c27
bring back login etc
moritzWa Mar 31, 2025
8280d28
add feat
moritzWa Apr 1, 2025
83d16d9
polish
moritzWa Apr 1, 2025
e7f2a59
add enrichment login wall
moritzWa Apr 1, 2025
5320025
polish
moritzWa Apr 1, 2025
57f1453
polish table header
moritzWa Apr 1, 2025
bb87220
start
moritzWa Apr 2, 2025
f3919cb
fix add rows by default
moritzWa Apr 2, 2025
697788a
fix bug
moritzWa Apr 2, 2025
baf49f2
fix
moritzWa Apr 2, 2025
1d1554f
fix sidebar hover
moritzWa Apr 2, 2025
dd05411
start slug
moritzWa Apr 2, 2025
02961b2
slug frontent
moritzWa Apr 2, 2025
8ecf742
start json export
moritzWa Apr 2, 2025
b4fbef6
wrap column headers
SimonBerens Apr 2, 2025
e188c4e
Merge pull request #11 from moritzWa/simon/wrap-header
SimonBerens Apr 2, 2025
c49cda4
add may travel locations test and misc
SimonBerens Apr 2, 2025
b18e792
misc
SimonBerens Apr 2, 2025
27ec4cf
Merge pull request #12 from moritzWa/simon/may-locations-test
SimonBerens Apr 2, 2025
3b611f1
finish import
moritzWa Apr 2, 2025
5cd6b73
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Apr 2, 2025
2cc4128
make columsn sortable
SimonBerens Apr 2, 2025
16a8074
Merge pull request #13 from moritzWa/simon/sort-numbers
SimonBerens Apr 2, 2025
45c13b5
improve link rendering
SimonBerens Apr 2, 2025
fec5296
Merge pull request #14 from moritzWa/simon/link-rendering
SimonBerens Apr 2, 2025
ab3d874
start
moritzWa Apr 2, 2025
e4f4be3
polish
moritzWa Apr 2, 2025
4916d22
Merge remote-tracking branch 'refs/remotes/origin/main'
moritzWa Apr 2, 2025
0e85c38
star fixing
moritzWa Apr 2, 2025
07b6a40
fix col-insert
moritzWa Apr 2, 2025
96a85a9
polish tables.ts
moritzWa Apr 2, 2025
a781d96
simplify import and fix final name as id usage
moritzWa Apr 2, 2025
9106c2e
fix seeders
moritzWa Apr 2, 2025
de80a71
add header padding
SimonBerens Apr 2, 2025
ffd3a12
Merge pull request #15 from moritzWa/simon/header-padding
SimonBerens Apr 2, 2025
13a8965
row ordering
SimonBerens Apr 2, 2025
ddedec9
Merge pull request #16 from moritzWa/simon/row-ordering
SimonBerens Apr 2, 2025
f8ec305
start layout
moritzWa Apr 2, 2025
251a40b
fix layout
moritzWa Apr 2, 2025
73b09a8
add db field and markdown logic
moritzWa Apr 2, 2025
22549ee
markdown editing
moritzWa Apr 2, 2025
3a7eb26
handle empty case
moritzWa Apr 2, 2025
5801895
continue this pr
moritzWa Apr 2, 2025
ea9daef
backend commit
moritzWa Apr 2, 2025
df24ee6
sitemap
moritzWa Apr 2, 2025
261d2b9
typecheck
SimonBerens Apr 2, 2025
4663ed2
add sitemap
moritzWa Apr 2, 2025
3225db2
fix layout
moritzWa Apr 2, 2025
bfb785f
cta
moritzWa Apr 2, 2025
2455350
Merge branch 'main' into public-table-blog-view
moritzWa Apr 2, 2025
fe7a793
currency formatting
SimonBerens Apr 2, 2025
a319a8e
general number formatting
SimonBerens Apr 2, 2025
2c6b82f
cleanup
SimonBerens Apr 2, 2025
e9315bf
add formatting label
SimonBerens Apr 2, 2025
05d40e7
Merge pull request #17 from moritzWa/simon/currency
moritzWa Apr 2, 2025
0baed19
Merge branch 'main' into public-table-blog-view
moritzWa Apr 3, 2025
4452223
fix ts issues
moritzWa Apr 3, 2025
8e44cfd
Merge pull request #18 from moritzWa/public-table-blog-view
moritzWa Apr 3, 2025
439be3f
remove monospace font
SimonBerens Apr 3, 2025
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
7 changes: 7 additions & 0 deletions .cursor/rules/bun.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
description: when installing packages or running the project (bun dev)
globs:
alwaysApply: false
---
Remember to use bun instead of npm
Remebmer to install frontend packages in "/client" and backend packages in "/server"
6 changes: 6 additions & 0 deletions .cursor/rules/coding-style.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
description: *.ts,*.tsx
globs:
alwaysApply: false
---
- Write simple and clean code. When considering a change prefer the simple code modification/implementation. Keep. It. Simple.
6 changes: 6 additions & 0 deletions .cursor/rules/datatable.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
description: Frontend/Client/Web Development
globs: *.tsx
alwaysApply: false
---
- We use Tailwind CSS and Shadcn components. You can find them in client/src/components/ui/. Before adding a new component first check if it already exist. If not you can install it using this pattern `npx shadcn@latest add {componentName}`. Do not generate components from scratch that exist as part of the Shadcn library!
14 changes: 14 additions & 0 deletions .eslintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:prettier/recommended"
],
"parser": "@typescript-eslint/parser",
"plugins": ["@typescript-eslint", "prettier"],
"rules": {
"prettier/prettier": "error",
"@typescript-eslint/explicit-module-boundary-types": "off",
"@typescript-eslint/no-explicit-any": "warn"
}
}
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,8 @@ npm-debug.log*
yarn-debug.log*
yarn-error.log*
/.changelog
.npm/
.npm/

# random
server/test.txt
server/result.txt
9 changes: 9 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"semi": true,
"trailingComma": "es5",
"singleQuote": true,
"printWidth": 100,
"tabWidth": 2,
"useTabs": false,
"endOfLine": "auto"
}
9 changes: 9 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.wordWrap": "on",
"editor.tabSize": 2
}
57 changes: 47 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,22 @@ A powerful data analysis and visualization SaaS platform with authentication, pa

### Prerequisites

- Node.js (v16+)
- Bun (latest version)
- MongoDB
- Stripe account
- Google OAuth credentials
- Doppler CLI

### MongoDB Setup

1. Install MongoDB:

- **macOS**: `brew install mongodb-community`
- **Windows**: Download and install from [MongoDB website](https://www.mongodb.com/try/download/community)
- **Linux**: Follow distribution-specific instructions from [MongoDB docs](https://www.mongodb.com/docs/manual/administration/install-on-linux/)

2. Start MongoDB:

- **macOS/Linux**: `mongod --dbpath=/path/to/data/directory`
- **Windows**: `mongod --dbpath=C:\path\to\data\directory`
- Or use the MongoDB service if installed
Expand All @@ -38,31 +41,65 @@ A powerful data analysis and visualization SaaS platform with authentication, pa
- Connect to MongoDB shell: `mongosh`
- You should see a connection to localhost:27017

### Database Seeding

The project includes scripts to seed your database with sample data:

1. **Reset Everything**: Delete all data and reseed from scratch
```bash
doppler run -- bun run --cwd server db:reset
```

Or run individual commands:

1. **Seed Database**: Creates tables and populates them with sample data

```bash
doppler run -- bun run --cwd server db:seed
```

2. **Delete Data**: Removes all data except user accounts
```bash
doppler run -- bun run --cwd server db:delete
```

Note: The seeding script uses the email specified in the script to associate data with a user. Make sure to update the email in the script (`server/src/scripts/seeder.ts`) to match an existing user in your database.

### Installation

1. Clone the repository

```bash
git clone https://github.com/moritzWa/deeptable.git
cd deeptable
```

2. Install dependencies

```bash
npm install
bun install
```

3. Set up environment variables
3. Set up environment variables with Doppler

- Install Doppler CLI if you haven't already
- Configure your Doppler project
- No need to manually manage .env files as Doppler will handle this

4. Start the development servers

For the frontend (in the client directory):

```bash
# Copy example env files
cp server/.env.example server/.env
touch client/.env
cd client
doppler run -- bun dev --elide-lines=5000
```

4. Update environment variables in both `client/.env` and `server/.env`
For the backend (in the server directory):

5. Start the development server
```bash
npm run dev
cd server
doppler run -- bun dev --elide-lines=5000
```

## Customization
Expand All @@ -88,4 +125,4 @@ MIT

## Support

For questions or support, please open an issue in the repository.
For questions or support, please open an issue in the repository.
Binary file added bun.lockb
Binary file not shown.
2 changes: 2 additions & 0 deletions client/bunfig.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Bun configuration file
preload = ["./preload.ts"]
41 changes: 20 additions & 21 deletions client/components.json
Original file line number Diff line number Diff line change
@@ -1,22 +1,21 @@
{
"$schema": "https://ui.shadcn.com/schema.json",
"style": "new-york",
"rsc": false,
"tsx": true,
"tailwind": {
"config": "tailwind.config.js",
"css": "src/index.css",
"baseColor": "zinc",
"cssVariables": true,
"prefix": ""
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils",
"ui": "@/components/ui",
"lib": "@/lib",
"hooks": "@/hooks"
},
"iconLibrary": "lucide"
}

"$schema": "https://ui.shadcn.com/schema.json",
"style": "new-york",
"rsc": false,
"tsx": true,
"tailwind": {
"config": "tailwind.config.js",
"css": "src/index.css",
"baseColor": "zinc",
"cssVariables": true,
"prefix": ""
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils",
"ui": "@/components/ui",
"lib": "@/lib",
"hooks": "@/hooks"
},
"iconLibrary": "lucide"
}
5 changes: 4 additions & 1 deletion client/craco.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,7 @@ module.exports = {
'@shared': path.resolve(__dirname, '../shared'),
},
},
};
devServer: {
port: 3000,
},
};
Loading