Skip to content

Commit 1774529

Browse files
Add desktop development tooling configuration files
1 parent 0c7ae60 commit 1774529

8 files changed

Lines changed: 345 additions & 0 deletions

File tree

apps/desktop/.depcheckrc.json

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"ignoreMatches": [
3+
"@types/*",
4+
"eslint-*",
5+
"prettier*",
6+
"husky",
7+
"rimraf",
8+
"vitest",
9+
"vite",
10+
"typescript",
11+
"wrangler",
12+
"electron*"
13+
],
14+
"ignoreDirs": ["dist", "build", "node_modules", ".git"],
15+
"skipMissing": false,
16+
"ignorePatterns": ["*.d.ts", "*.test.ts", "*.test.tsx", "*.spec.ts", "*.spec.tsx"]
17+
}

apps/desktop/.dockerignore

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Ignore Git and GitHub files
2+
.git
3+
.github/
4+
5+
# Ignore Husky configuration files
6+
.husky/
7+
8+
# Ignore documentation and metadata files
9+
CONTRIBUTING.md
10+
LICENSE
11+
README.md
12+
13+
# Ignore environment examples and sensitive info
14+
.env
15+
*.local
16+
*.example
17+
18+
# Ignore node modules, logs and cache files
19+
**/*.log
20+
**/node_modules
21+
**/dist
22+
**/build
23+
**/.cache
24+
logs
25+
dist-ssr
26+
.DS_Store

apps/desktop/.editorconfig

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
root = true
2+
3+
[*]
4+
indent_style = space
5+
end_of_line = lf
6+
charset = utf-8
7+
trim_trailing_whitespace = true
8+
insert_final_newline = true
9+
max_line_length = 120
10+
indent_size = 2
11+
12+
[*.md]
13+
trim_trailing_whitespace = false

apps/desktop/.env.example

Lines changed: 209 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,209 @@
1+
# ======================================
2+
# Environment Variables for CodinIT.dev
3+
# ======================================
4+
# Copy this file to .env.local and fill in your API keys
5+
# See README.md for setup instructions
6+
7+
# ======================================
8+
# AI PROVIDER API KEYS
9+
# ======================================
10+
11+
# Anthropic Claude
12+
# Get your API key from: https://console.anthropic.com/
13+
ANTHROPIC_API_KEY=your_anthropic_api_key_here
14+
15+
# OpenAI GPT models
16+
# Get your API key from: https://platform.openai.com/api-keys
17+
OPENAI_API_KEY=your_openai_api_key_here
18+
19+
# GitHub Models (OpenAI models hosted by GitHub)
20+
# Get your Personal Access Token from: https://github.com/settings/tokens
21+
# - Select "Fine-grained tokens"
22+
# - Set repository access to "All repositories"
23+
# - Enable "GitHub Models" permission
24+
GITHUB_API_KEY=github_pat_your_personal_access_token_here
25+
26+
# Perplexity AI (Search-augmented models)
27+
# Get your API key from: https://www.perplexity.ai/settings/api
28+
PERPLEXITY_API_KEY=your_perplexity_api_key_here
29+
30+
# DeepSeek
31+
# Get your API key from: https://platform.deepseek.com/api_keys
32+
DEEPSEEK_API_KEY=your_deepseek_api_key_here
33+
34+
# Google Gemini
35+
# Get your API key from: https://makersuite.google.com/app/apikey
36+
GOOGLE_GENERATIVE_AI_API_KEY=your_google_gemini_api_key_here
37+
38+
# Cohere
39+
# Get your API key from: https://dashboard.cohere.ai/api-keys
40+
COHERE_API_KEY=your_cohere_api_key_here
41+
42+
# Groq (Fast inference)
43+
# Get your API key from: https://console.groq.com/keys
44+
GROQ_API_KEY=your_groq_api_key_here
45+
46+
# Mistral
47+
# Get your API key from: https://console.mistral.ai/api-keys/
48+
MISTRAL_API_KEY=your_mistral_api_key_here
49+
50+
# Together AI
51+
# Get your API key from: https://api.together.xyz/settings/api-keys
52+
TOGETHER_API_KEY=your_together_api_key_here
53+
54+
# X.AI (Elon Musk's company)
55+
# Get your API key from: https://console.x.ai/
56+
XAI_API_KEY=your_xai_api_key_here
57+
58+
# Moonshot AI (Kimi models)
59+
# Get your API key from: https://platform.moonshot.ai/console/api-keys
60+
MOONSHOT_API_KEY=your_moonshot_api_key_here
61+
62+
# Hugging Face
63+
# Get your API key from: https://huggingface.co/settings/tokens
64+
HuggingFace_API_KEY=your_huggingface_api_key_here
65+
66+
# Hyperbolic
67+
# Get your API key from: https://app.hyperbolic.xyz/settings
68+
HYPERBOLIC_API_KEY=your_hyperbolic_api_key_here
69+
70+
# OpenRouter (Meta routing for multiple providers)
71+
# Get your API key from: https://openrouter.ai/keys
72+
OPEN_ROUTER_API_KEY=your_openrouter_api_key_here
73+
74+
# ======================================
75+
# CUSTOM PROVIDER BASE URLS (Optional)
76+
# ======================================
77+
78+
# Ollama (Local models)
79+
# DON'T USE http://localhost:11434 due to IPv6 issues
80+
# USE: http://127.0.0.1:11434
81+
OLLAMA_API_BASE_URL=http://127.0.0.1:11434
82+
83+
# OpenAI-like API (Compatible providers)
84+
OPENAI_LIKE_API_BASE_URL=your_openai_like_base_url_here
85+
OPENAI_LIKE_API_KEY=your_openai_like_api_key_here
86+
87+
# Together AI Base URL
88+
TOGETHER_API_BASE_URL=your_together_base_url_here
89+
90+
# Hyperbolic Base URL
91+
HYPERBOLIC_API_BASE_URL=https://api.hyperbolic.xyz/v1/chat/completions
92+
93+
# LMStudio (Local models)
94+
# Make sure to enable CORS in LMStudio
95+
# DON'T USE http://localhost:1234 due to IPv6 issues
96+
# USE: http://127.0.0.1:1234
97+
LMSTUDIO_API_BASE_URL=http://127.0.0.1:1234
98+
99+
# ======================================
100+
# CLOUD SERVICES CONFIGURATION
101+
# ======================================
102+
103+
# AWS Bedrock Configuration (JSON format)
104+
# Get your credentials from: https://console.aws.amazon.com/iam/home
105+
# Example: {"region": "us-east-1", "accessKeyId": "yourAccessKeyId", "secretAccessKey": "yourSecretAccessKey"}
106+
AWS_BEDROCK_CONFIG=your_aws_bedrock_config_json_here
107+
108+
# ======================================
109+
# GITHUB INTEGRATION
110+
# ======================================
111+
112+
# GitHub Personal Access Token
113+
# Get from: https://github.com/settings/tokens
114+
# Used for importing/cloning repositories and accessing private repos
115+
VITE_GITHUB_ACCESS_TOKEN=your_github_personal_access_token_here
116+
117+
# GitHub Token Type ('classic' or 'fine-grained')
118+
VITE_GITHUB_TOKEN_TYPE=classic
119+
120+
# ======================================
121+
# GITLAB INTEGRATION
122+
# ======================================
123+
124+
# GitLab Personal Access Token
125+
# Get your GitLab Personal Access Token here:
126+
# https://gitlab.com/-/profile/personal_access_tokens
127+
#
128+
# This token is used for:
129+
# 1. Importing/cloning GitLab repositories
130+
# 2. Accessing private projects
131+
# 3. Creating/updating branches
132+
# 4. Creating/updating commits and pushing code
133+
# 5. Creating new GitLab projects via the API
134+
#
135+
# Make sure your token has the following scopes:
136+
# - api (for full API access including project creation and commits)
137+
# - read_repository (to clone/import repositories)
138+
# - write_repository (to push commits and update branches)
139+
VITE_GITLAB_ACCESS_TOKEN=your_gitlab_personal_access_token_here
140+
141+
# Set the GitLab instance URL (e.g., https://gitlab.com or your self-hosted domain)
142+
VITE_GITLAB_URL=https://gitlab.com
143+
144+
# GitLab token type should be 'personal-access-token'
145+
VITE_GITLAB_TOKEN_TYPE=personal-access-token
146+
147+
# ======================================
148+
# VERCEL INTEGRATION
149+
# ======================================
150+
151+
# Vercel Access Token
152+
# Get your access token from: https://vercel.com/account/tokens
153+
# This token is used for:
154+
# 1. Deploying projects to Vercel
155+
# 2. Managing Vercel projects and deployments
156+
# 3. Accessing project analytics and logs
157+
VITE_VERCEL_ACCESS_TOKEN=your_vercel_access_token_here
158+
159+
# ======================================
160+
# NETLIFY INTEGRATION
161+
# ======================================
162+
163+
# Netlify Access Token
164+
# Get your access token from: https://app.netlify.com/user/applications
165+
# This token is used for:
166+
# 1. Deploying sites to Netlify
167+
# 2. Managing Netlify sites and deployments
168+
# 3. Accessing build logs and analytics
169+
VITE_NETLIFY_ACCESS_TOKEN=your_netlify_access_token_here
170+
171+
# ======================================
172+
# SUPABASE INTEGRATION
173+
# ======================================
174+
175+
# Supabase Project Configuration
176+
# Get your project details from: https://supabase.com/dashboard
177+
# Select your project → Settings → API
178+
VITE_SUPABASE_URL=your_supabase_project_url_here
179+
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key_here
180+
181+
# Supabase Access Token (for management operations)
182+
# Generate from: https://supabase.com/dashboard/account/tokens
183+
VITE_SUPABASE_ACCESS_TOKEN=your_supabase_access_token_here
184+
185+
# ======================================
186+
# DEVELOPMENT SETTINGS
187+
# ======================================
188+
189+
# Development Mode
190+
NODE_ENV=development
191+
192+
# Application Port (optional, defaults to 5173 for development)
193+
PORT=5173
194+
195+
# Logging Level (debug, info, warn, error)
196+
VITE_LOG_LEVEL=debug
197+
198+
# Default Context Window Size (for local models)
199+
DEFAULT_NUM_CTX=32768
200+
201+
# ======================================
202+
# SETUP INSTRUCTIONS
203+
# ======================================
204+
# 1. Copy this file to .env.local: cp .env.example .env.local
205+
# 2. Fill in the API keys for the services you want to use
206+
# 3. All service integration keys use VITE_ prefix for auto-connection
207+
# 4. Restart your development server: pnpm run dev
208+
# 5. Services will auto-connect on startup if tokens are provided
209+
# 6. Go to Settings > Service tabs to manage connections manually if needed

apps/desktop/.gitignore

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
logs
2+
*.log
3+
npm-debug.log*
4+
yarn-debug.log*
5+
yarn-error.log*
6+
pnpm-debug.log*
7+
lerna-debug.log*
8+
9+
node_modules
10+
dist
11+
dist-ssr
12+
*.local
13+
14+
.vscode/*
15+
.vscode/launch.json
16+
!.vscode/extensions.json
17+
.idea
18+
.DS_Store
19+
*.suo
20+
*.ntvs*
21+
*.njsproj
22+
*.sln
23+
*.sw?
24+
25+
/.history
26+
/.cache
27+
/build
28+
functions/build/
29+
.env.local
30+
.env
31+
.dev.vars
32+
*.vars
33+
.wrangler
34+
_worker.bundle
35+
36+
Modelfile
37+
modelfiles
38+
39+
# docs ignore
40+
site
41+
42+
# commit file ignore
43+
app/commit.json
44+
changelogUI.md
45+
docs/instructions/Roadmap.md
46+
.cursorrules
47+
*.md
48+
.qodo
49+
.CLAUDE.md
50+
.claude

apps/desktop/.lighthouserc.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"ci": {
3+
"collect": {
4+
"url": ["http://localhost:5173/"],
5+
"startServerCommand": "pnpm run start",
6+
"numberOfRuns": 3
7+
},
8+
"assert": {
9+
"assertions": {
10+
"categories:performance": ["warn", {"minScore": 0.8}],
11+
"categories:accessibility": ["warn", {"minScore": 0.9}],
12+
"categories:best-practices": ["warn", {"minScore": 0.8}],
13+
"categories:seo": ["warn", {"minScore": 0.8}]
14+
}
15+
},
16+
"upload": {
17+
"target": "temporary-public-storage"
18+
}
19+
}
20+
}

apps/desktop/.prettierignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
pnpm-lock.yaml
2+
.astro

apps/desktop/.prettierrc

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"printWidth": 120,
3+
"singleQuote": true,
4+
"useTabs": false,
5+
"tabWidth": 2,
6+
"semi": true,
7+
"bracketSpacing": true
8+
}

0 commit comments

Comments
 (0)