1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
| create table if not exists users (
id text not null primary key,
username text not null unique,
hash_pass text not null,
created_at datetime not null
);
create table if not exists characters (
id text not null primary key,
user_id text not null,
name text not null,
description text not null,
created_at datetime not null,
foreign key(user_id) references user(id)
);
create unique index if not exists idx_characters_user_id_name on characters(user_id, name);
create table if not exists prompts (
id text not null primary key,
user_id text not null,
prompt text not null,
created_at datetime not null,
foreign key(user_id) references user(id)
);
create table if not exists subscriptions (
id text not null primary key,
user_id text not null unique,
stripe_customer_id text not null unique,
active bool not null,
created_at datetime not null,
foreign key(user_id) references user(id)
);
create table if not exists stories (
id text not null primary key,
prompt_id text not null,
user_id text not null,
title text not null,
summary text not null,
story text not null,
created_at datetime not null,
foreign key(prompt_id) references prompts(id)
foreign key(user_id) references user(id)
);
create table if not exists sessions (
token text primary key,
user_id text not null,
expire_at datetime not null
);
|