feat(add templates): add five more templates (laravel, django, twitter… (#371)
* feat(add templates): add five more templates (laravel, django, twitter, adonis-acl, akaunting) * fix build * fix tags --------- Co-authored-by: Guy Ben-Aharon <baguy3@gmail.com>
BIN
src/assets/templates/adonis-acl-dark.png
Normal file
After Width: | Height: | Size: 290 KiB |
BIN
src/assets/templates/adonis-acl.png
Normal file
After Width: | Height: | Size: 322 KiB |
BIN
src/assets/templates/akaunting-dark.png
Normal file
After Width: | Height: | Size: 327 KiB |
BIN
src/assets/templates/akaunting.png
Normal file
After Width: | Height: | Size: 345 KiB |
BIN
src/assets/templates/django-db-dark.png
Normal file
After Width: | Height: | Size: 354 KiB |
BIN
src/assets/templates/django-db.png
Normal file
After Width: | Height: | Size: 389 KiB |
BIN
src/assets/templates/laravel-db-dark.png
Normal file
After Width: | Height: | Size: 168 KiB |
BIN
src/assets/templates/laravel-db.png
Normal file
After Width: | Height: | Size: 172 KiB |
BIN
src/assets/templates/twitter-db-dark.png
Normal file
After Width: | Height: | Size: 370 KiB |
BIN
src/assets/templates/twitter-db.png
Normal file
After Width: | Height: | Size: 404 KiB |
@@ -4,6 +4,11 @@ import { visualNovelDb } from './templates/visual-novel-db';
|
||||
import { airbnbDb } from './templates/airbnb-db';
|
||||
import { wordpressDb } from './templates/wordpress-db';
|
||||
import { pokemonDb } from './templates/pokemon-db';
|
||||
import { adonisAclDb } from './templates/adonis-acl-db';
|
||||
import { akauntingDb } from './templates/akaunting-db';
|
||||
import { djangoDb } from './templates/django-db';
|
||||
import { twitterDb } from './templates/twitter-db';
|
||||
import { laravelDb } from './templates/laravel-db';
|
||||
|
||||
export interface Template {
|
||||
slug: string;
|
||||
@@ -20,8 +25,13 @@ export interface Template {
|
||||
|
||||
export const templates: Template[] = [
|
||||
employeeDb,
|
||||
visualNovelDb,
|
||||
pokemonDb,
|
||||
airbnbDb,
|
||||
wordpressDb,
|
||||
pokemonDb,
|
||||
djangoDb,
|
||||
laravelDb,
|
||||
twitterDb,
|
||||
visualNovelDb,
|
||||
adonisAclDb,
|
||||
akauntingDb,
|
||||
];
|
||||
|
667
src/templates-data/templates/adonis-acl-db.ts
Normal file
@@ -0,0 +1,667 @@
|
||||
import { DatabaseType } from '@/lib/domain/database-type';
|
||||
import type { Template } from '../templates-data';
|
||||
import image from '@/assets/templates/adonis-acl.png';
|
||||
import imageDark from '@/assets/templates/adonis-acl-dark.png';
|
||||
|
||||
export const adonisAclDb: Template = {
|
||||
slug: 'adonis-acl-db',
|
||||
name: 'Adonis Acl Database',
|
||||
shortDescription: 'Role based permissions',
|
||||
description:
|
||||
'Adonis ACL adds role based permissions to built in Auth System of Adonis Framework.',
|
||||
image,
|
||||
imageDark,
|
||||
tags: ['Postgres', 'Open Source', 'Node.js'],
|
||||
featured: true,
|
||||
url: 'https://github.com/enniel/adonis-acl',
|
||||
diagram: {
|
||||
id: 'adonis_acl_db',
|
||||
name: 'adonis-acl-db',
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date(),
|
||||
databaseType: DatabaseType.POSTGRESQL,
|
||||
tables: [
|
||||
{
|
||||
id: '4tfy7o1t3ln1373iyxtzpz8t5',
|
||||
name: 'permission_user',
|
||||
schema: 'public',
|
||||
x: 441.0506024096385,
|
||||
y: -94.22037476830401,
|
||||
fields: [
|
||||
{
|
||||
id: 'kx4al18p0mzdkcnr1lpo6h75n',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('permission_user_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'zjbpw5umqxilj7urdfmbsc3oy',
|
||||
name: 'permission_id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'inmxxha9vdpnfeupr788gwfw1',
|
||||
name: 'user_id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'vimawd57a8ft226yznzhts8gh',
|
||||
name: 'created_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '2fzwubtg6tkpglg9rvej86k73',
|
||||
name: 'updated_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: '1usshdeu8pbxa3l4itt814ldc',
|
||||
name: 'permission_user_permission_id_user_id_key',
|
||||
unique: true,
|
||||
fieldIds: [
|
||||
'zjbpw5umqxilj7urdfmbsc3oy',
|
||||
'inmxxha9vdpnfeupr788gwfw1',
|
||||
],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'o4zsinm8juyrgd318f7thopu2',
|
||||
name: 'idx_permission_user_permission_id',
|
||||
unique: false,
|
||||
fieldIds: ['zjbpw5umqxilj7urdfmbsc3oy'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'oq2qxxzd2n8mphs4lh7jyzjxk',
|
||||
name: 'idx_permission_user_user_id',
|
||||
unique: false,
|
||||
fieldIds: ['inmxxha9vdpnfeupr788gwfw1'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'i60fxthzz9o372y4tbhb5cuhm',
|
||||
name: 'permission_user_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['kx4al18p0mzdkcnr1lpo6h75n'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#4dee8a',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '6v24e5bdz4vi9e757spbcea6d',
|
||||
name: 'role_user',
|
||||
schema: 'public',
|
||||
x: 374.94791473586656,
|
||||
y: 337.7814643188136,
|
||||
fields: [
|
||||
{
|
||||
id: 'vaaupx4bcejm1kqx4jze9wytx',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('role_user_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '29dylthvlf2v5vh41dp1kyxbr',
|
||||
name: 'role_id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'g4i6e70u835inwwcjs9tdiwpf',
|
||||
name: 'user_id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '3tfwqm0igug2j0vm6sv6nt6i5',
|
||||
name: 'created_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'ho7doyax6cr77qpvsboz6jymz',
|
||||
name: 'updated_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: '7ngkqnaew4m8h3ejoxdercox1',
|
||||
name: 'role_user_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['vaaupx4bcejm1kqx4jze9wytx'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'dz3poedtl3z6wkwanxgv98zxi',
|
||||
name: 'role_user_role_id_user_id_key',
|
||||
unique: true,
|
||||
fieldIds: [
|
||||
'29dylthvlf2v5vh41dp1kyxbr',
|
||||
'g4i6e70u835inwwcjs9tdiwpf',
|
||||
],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'l8j5np655am15rgrfja4qzpdt',
|
||||
name: 'idx_role_user_user_id',
|
||||
unique: false,
|
||||
fieldIds: ['g4i6e70u835inwwcjs9tdiwpf'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'ie7wixunsiwfzp8udcpxmsj7p',
|
||||
name: 'idx_role_user_role_id',
|
||||
unique: false,
|
||||
fieldIds: ['29dylthvlf2v5vh41dp1kyxbr'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#ffe374',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'i298i343vjq652fdswhwaysr7',
|
||||
name: 'users',
|
||||
schema: 'public',
|
||||
x: 90.5794253938833,
|
||||
y: 140.8111214087117,
|
||||
fields: [
|
||||
{
|
||||
id: 'zs7cvtl01rtle7xts2mwqavg3',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('users_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: 'vxdig4dza0x7d7k70a8k6m7ap',
|
||||
name: 'users_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['zs7cvtl01rtle7xts2mwqavg3'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#8a61f5',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'mueqxc4u5k58cz26hqu1ku7sx',
|
||||
name: 'permission_role',
|
||||
schema: 'public',
|
||||
x: 1283.7775718257649,
|
||||
y: 56.92159406858201,
|
||||
fields: [
|
||||
{
|
||||
id: '8s76u8u0ivylxlhhya7geg3t7',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('permission_role_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'jkyfn71uasmxjj22bsxxug6wb',
|
||||
name: 'permission_id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'i1y14qiro8bqu0nhaj4quyd9p',
|
||||
name: 'role_id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 's86pfp5iewn9mwci4m75oro0j',
|
||||
name: 'created_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'v10o7negcp8tliaiie8iste38',
|
||||
name: 'updated_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: '4uhhvnt29q91z55tfpr1uib38',
|
||||
name: 'permission_role_permission_id_role_id_key',
|
||||
unique: true,
|
||||
fieldIds: [
|
||||
'jkyfn71uasmxjj22bsxxug6wb',
|
||||
'i1y14qiro8bqu0nhaj4quyd9p',
|
||||
],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '8o6apfea6ifduymoxd0teibi0',
|
||||
name: 'idx_permission_role_role_id',
|
||||
unique: false,
|
||||
fieldIds: ['i1y14qiro8bqu0nhaj4quyd9p'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'lahuo79xsq2brj2dni67hpip1',
|
||||
name: 'idx_permission_role_permission_id',
|
||||
unique: false,
|
||||
fieldIds: ['jkyfn71uasmxjj22bsxxug6wb'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '6hqnbyj0uzzxulurr56uak38x',
|
||||
name: 'permission_role_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['8s76u8u0ivylxlhhya7geg3t7'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#8eb7ff',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 't6c4vthncqe0gxza814wuzcjl',
|
||||
name: 'permissions',
|
||||
schema: 'public',
|
||||
x: 877.67859128823,
|
||||
y: -156.20315106580168,
|
||||
fields: [
|
||||
{
|
||||
id: 'iywp08732p9q7pltm6pqqmmk6',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('permissions_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'z9p6x72tx45bfv0iwq64jfobp',
|
||||
name: 'slug',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'ipix7t0lz3pn78leic3s9xrjy',
|
||||
name: 'name',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'kli69miojwm6e0hseacy8o5hy',
|
||||
name: 'description',
|
||||
type: {
|
||||
id: 'text',
|
||||
name: 'text',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'wjd77kdm6ecdythpwarpvu658',
|
||||
name: 'created_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'h4ir4c21y2uibomt5twrdcqgi',
|
||||
name: 'updated_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: '7wofvazg9gu4z15gazvnu29d2',
|
||||
name: 'permissions_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['iywp08732p9q7pltm6pqqmmk6'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'upxsqobs4g597kbbpfmyqnnkh',
|
||||
name: 'permissions_slug_key',
|
||||
unique: true,
|
||||
fieldIds: ['z9p6x72tx45bfv0iwq64jfobp'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#b067e9',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'wigyqmreqg7oo1361a4v4tf1o',
|
||||
name: 'roles',
|
||||
schema: 'public',
|
||||
x: 837.7233549582947,
|
||||
y: 272.313623725672,
|
||||
fields: [
|
||||
{
|
||||
id: 'bz9n3ntxo22bb7mu9t9wwv67x',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('roles_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'wmrytzy38hipx342qjznsy8zx',
|
||||
name: 'slug',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'hk3g5yid08iozkvooc4htuabs',
|
||||
name: 'name',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'h0gp2hi6nf14dlw0wo14h1gyn',
|
||||
name: 'description',
|
||||
type: {
|
||||
id: 'text',
|
||||
name: 'text',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'd2kwx6qx2cd7epm7m5pikp718',
|
||||
name: 'created_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'xq1udcys21dn8rwn6vatyy47a',
|
||||
name: 'updated_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: 'ngrpk9ugw0en5ej20jst3fdj2',
|
||||
name: 'roles_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['bz9n3ntxo22bb7mu9t9wwv67x'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '4od6wsi5v258oflij1uw3d43b',
|
||||
name: 'roles_slug_key',
|
||||
unique: true,
|
||||
fieldIds: ['wmrytzy38hipx342qjznsy8zx'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#ff6363',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
relationships: [
|
||||
{
|
||||
id: '47fwpcozxyz27e30pm1ib56zm',
|
||||
name: 'permission_user_user_id_fkey',
|
||||
sourceSchema: 'public',
|
||||
targetSchema: 'public',
|
||||
sourceTableId: '4tfy7o1t3ln1373iyxtzpz8t5',
|
||||
targetTableId: 'i298i343vjq652fdswhwaysr7',
|
||||
sourceFieldId: 'inmxxha9vdpnfeupr788gwfw1',
|
||||
targetFieldId: 'zs7cvtl01rtle7xts2mwqavg3',
|
||||
sourceCardinality: 'many',
|
||||
targetCardinality: 'one',
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '9s8jc4cycjn9ql94ncqjzrbec',
|
||||
name: 'permission_user_permission_id_fkey',
|
||||
sourceSchema: 'public',
|
||||
targetSchema: 'public',
|
||||
sourceTableId: '4tfy7o1t3ln1373iyxtzpz8t5',
|
||||
targetTableId: 't6c4vthncqe0gxza814wuzcjl',
|
||||
sourceFieldId: 'zjbpw5umqxilj7urdfmbsc3oy',
|
||||
targetFieldId: 'iywp08732p9q7pltm6pqqmmk6',
|
||||
sourceCardinality: 'many',
|
||||
targetCardinality: 'one',
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'dmxvyh7b90codoe0aosraa94h',
|
||||
name: 'role_user_user_id_fkey',
|
||||
sourceSchema: 'public',
|
||||
targetSchema: 'public',
|
||||
sourceTableId: '6v24e5bdz4vi9e757spbcea6d',
|
||||
targetTableId: 'i298i343vjq652fdswhwaysr7',
|
||||
sourceFieldId: 'g4i6e70u835inwwcjs9tdiwpf',
|
||||
targetFieldId: 'zs7cvtl01rtle7xts2mwqavg3',
|
||||
sourceCardinality: 'many',
|
||||
targetCardinality: 'one',
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'f0t9gyglmjmnd5apytli0p9ip',
|
||||
name: 'role_user_role_id_fkey',
|
||||
sourceSchema: 'public',
|
||||
targetSchema: 'public',
|
||||
sourceTableId: '6v24e5bdz4vi9e757spbcea6d',
|
||||
targetTableId: 'wigyqmreqg7oo1361a4v4tf1o',
|
||||
sourceFieldId: '29dylthvlf2v5vh41dp1kyxbr',
|
||||
targetFieldId: 'bz9n3ntxo22bb7mu9t9wwv67x',
|
||||
sourceCardinality: 'many',
|
||||
targetCardinality: 'one',
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'hpvk9671hn872b3zr4p5fkisr',
|
||||
name: 'permission_role_role_id_fkey',
|
||||
sourceSchema: 'public',
|
||||
targetSchema: 'public',
|
||||
sourceTableId: 'mueqxc4u5k58cz26hqu1ku7sx',
|
||||
targetTableId: 'wigyqmreqg7oo1361a4v4tf1o',
|
||||
sourceFieldId: 'i1y14qiro8bqu0nhaj4quyd9p',
|
||||
targetFieldId: 'bz9n3ntxo22bb7mu9t9wwv67x',
|
||||
sourceCardinality: 'many',
|
||||
targetCardinality: 'one',
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'lvv365mewcakaozzmwv8qo78c',
|
||||
name: 'permission_role_permission_id_fkey',
|
||||
sourceSchema: 'public',
|
||||
targetSchema: 'public',
|
||||
sourceTableId: 'mueqxc4u5k58cz26hqu1ku7sx',
|
||||
targetTableId: 't6c4vthncqe0gxza814wuzcjl',
|
||||
sourceFieldId: 'jkyfn71uasmxjj22bsxxug6wb',
|
||||
targetFieldId: 'iywp08732p9q7pltm6pqqmmk6',
|
||||
sourceCardinality: 'many',
|
||||
targetCardinality: 'one',
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
dependencies: [],
|
||||
},
|
||||
};
|
@@ -10,7 +10,7 @@ export const airbnbDb: Template = {
|
||||
description: 'Example database schema diagram for Airbnb',
|
||||
image,
|
||||
imageDark,
|
||||
tags: ['postgres', 'example apps'],
|
||||
tags: ['Postgres', 'Example Apps'],
|
||||
featured: true,
|
||||
diagram: {
|
||||
id: 'airbnb_db',
|
||||
|
1138
src/templates-data/templates/akaunting-db.ts
Normal file
1047
src/templates-data/templates/django-db.ts
Normal file
@@ -11,7 +11,7 @@ export const employeeDb: Template = {
|
||||
'A schema for database of employees, departments, and salaries.',
|
||||
image,
|
||||
imageDark,
|
||||
tags: ['mysql'],
|
||||
tags: ['MySQL'],
|
||||
featured: true,
|
||||
diagram: {
|
||||
id: 'employees_db',
|
||||
|
322
src/templates-data/templates/laravel-db.ts
Normal file
@@ -0,0 +1,322 @@
|
||||
import { DatabaseType } from '@/lib/domain/database-type';
|
||||
import type { Template } from '../templates-data';
|
||||
import image from '@/assets/templates/laravel-db.png';
|
||||
import imageDark from '@/assets/templates/laravel-db-dark.png';
|
||||
|
||||
export const laravelDb: Template = {
|
||||
slug: 'laravel-db',
|
||||
name: 'Laravel',
|
||||
shortDescription: 'PHP web framework',
|
||||
description:
|
||||
'With elegant syntax, simplifying web development by streamlining common tasks across projects',
|
||||
image,
|
||||
imageDark,
|
||||
tags: ['Postgres', 'Open Source', 'Laravel', 'PHP'],
|
||||
featured: true,
|
||||
url: 'https://github.com/laravel/laravel',
|
||||
diagram: {
|
||||
id: 'laravel_db',
|
||||
name: 'laravel-db',
|
||||
createdAt: new Date(),
|
||||
updatedAt: new Date(),
|
||||
databaseType: DatabaseType.POSTGRESQL,
|
||||
tables: [
|
||||
{
|
||||
id: 'tzwvz1wtn84fny03tzl1sl0ho',
|
||||
name: 'failed_jobs',
|
||||
schema: 'public',
|
||||
x: 737.7682179548738,
|
||||
y: 139.69501050040327,
|
||||
fields: [
|
||||
{
|
||||
id: 'stybn7gf7n84qhv3kizvxz13p',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('failed_jobs_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '9fyo2qdmsglsw7ctthmzlep1j',
|
||||
name: 'connection',
|
||||
type: {
|
||||
id: 'text',
|
||||
name: 'text',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'ut52fvqjpa0u27jd2t6t92tom',
|
||||
name: 'queue',
|
||||
type: {
|
||||
id: 'text',
|
||||
name: 'text',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'plvfv0t9im2km2v0a0qzt8udo',
|
||||
name: 'payload',
|
||||
type: {
|
||||
id: 'text',
|
||||
name: 'text',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'g5ef3gfi72xw0xeb0x6ox4b7r',
|
||||
name: 'exception',
|
||||
type: {
|
||||
id: 'text',
|
||||
name: 'text',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'ez9j04lvylcn570ne77xjsbta',
|
||||
name: 'failed_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: 'ht83plkt884y1myetskx9redz',
|
||||
name: 'idx_failed_jobs_failed_at',
|
||||
unique: false,
|
||||
fieldIds: ['ez9j04lvylcn570ne77xjsbta'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'ztnvgd4m167ut9473h1kiofge',
|
||||
name: 'failed_jobs_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['stybn7gf7n84qhv3kizvxz13p'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#ffe374',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'ytrk4k6ihrm2fhkodz3t2ovzb',
|
||||
name: 'migrations',
|
||||
schema: 'public',
|
||||
x: 146.59849058742998,
|
||||
y: 208.72981137066984,
|
||||
fields: [
|
||||
{
|
||||
id: 'uldhz9mhxosp9dqfmmpvabzta',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('migrations_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'wjccp1hwlalr87ct56q35mf11',
|
||||
name: 'migration',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'jomrea7wdjx21q2510vyxz0y7',
|
||||
name: 'batch',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: 'tbyc6yvknlhyff4pw6ideqnde',
|
||||
name: 'migrations_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['uldhz9mhxosp9dqfmmpvabzta'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#4dee8a',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'yw7xlj5rjjevf292enea0qbgv',
|
||||
name: 'users',
|
||||
schema: 'public',
|
||||
x: 422.62737943432694,
|
||||
y: -112.94222230620639,
|
||||
fields: [
|
||||
{
|
||||
id: '79ny0my0rv9ztzg7ww735rmrj',
|
||||
name: 'id',
|
||||
type: {
|
||||
id: 'integer',
|
||||
name: 'integer',
|
||||
},
|
||||
primaryKey: true,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
default: "nextval('users_id_seq'::regclass)",
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'lzzou36zm6l6r4vmizdf24q8x',
|
||||
name: 'name',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'lh4oc6cam3kb161f1thohs95j',
|
||||
name: 'email',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: true,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'luulms1e4cbai05978ufc0xdi',
|
||||
name: 'email_verified_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'xai5t98b0syebn21hkdvcf6sg',
|
||||
name: 'password',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'b93oi649bi053g51mfobb94mq',
|
||||
name: 'remember_token',
|
||||
type: {
|
||||
id: 'character_varying',
|
||||
name: 'character varying',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '76dz2udxcbudh5c8sdmauwsas',
|
||||
name: 'created_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: '267qdi3o75bdg9lsf5wuhku9s',
|
||||
name: 'updated_at',
|
||||
type: {
|
||||
id: 'timestamp_with_time_zone',
|
||||
name: 'timestamp with time zone',
|
||||
},
|
||||
primaryKey: false,
|
||||
unique: false,
|
||||
nullable: true,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
indexes: [
|
||||
{
|
||||
id: 'uc19mnyl8xllnfjoaz3qkesi5',
|
||||
name: 'idx_users_email',
|
||||
unique: false,
|
||||
fieldIds: ['lh4oc6cam3kb161f1thohs95j'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'tgx4fsgm3j6q793g7ttfdr8em',
|
||||
name: 'users_email_key',
|
||||
unique: true,
|
||||
fieldIds: ['lh4oc6cam3kb161f1thohs95j'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
{
|
||||
id: 'kmp3sogww6j7lovhrv25dolxp',
|
||||
name: 'users_pkey',
|
||||
unique: true,
|
||||
fieldIds: ['79ny0my0rv9ztzg7ww735rmrj'],
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
color: '#ff6b8a',
|
||||
isView: false,
|
||||
isMaterializedView: false,
|
||||
createdAt: Date.now(),
|
||||
},
|
||||
],
|
||||
relationships: [],
|
||||
dependencies: [],
|
||||
},
|
||||
};
|
@@ -10,7 +10,7 @@ export const pokemonDb: Template = {
|
||||
description: 'Mysql Relational of 722 pokemons. 14 Tables 5 views.',
|
||||
image,
|
||||
imageDark,
|
||||
tags: ['mysql', 'pokemon', 'example apps'],
|
||||
tags: ['MySQL', 'Pokemon', 'Example Apps'],
|
||||
featured: true,
|
||||
url: 'https://github.com/brianr852/Pokemon-Database',
|
||||
diagram: {
|
||||
|
1191
src/templates-data/templates/twitter-db.ts
Normal file
@@ -11,7 +11,7 @@ export const visualNovelDb: Template = {
|
||||
'A comprehensive database for information about visual novels.',
|
||||
image,
|
||||
imageDark,
|
||||
tags: ['postgres'],
|
||||
tags: ['Postgres'],
|
||||
featured: true,
|
||||
url: 'https://vndb.org',
|
||||
diagram: {
|
||||
|
@@ -11,7 +11,7 @@ export const wordpressDb: Template = {
|
||||
'(CMS) ideal for building websites, blogs, or apps. Flexible, customizable, and designed for developers to expand',
|
||||
image,
|
||||
imageDark,
|
||||
tags: ['mysql', 'open source', 'WordPress', 'php'],
|
||||
tags: ['MySQL', 'Open Source', 'WordPress', 'PHP'],
|
||||
featured: true,
|
||||
url: 'https://wordpress.org',
|
||||
diagram: {
|
||||
|