Skip to content

Commit e91ae73

Browse files
committed
add readme
1 parent 3dfbf2b commit e91ae73

File tree

2 files changed

+100
-12
lines changed

2 files changed

+100
-12
lines changed

.env.example

Lines changed: 20 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,20 @@
1-
STRIPE_API_KEY=
2-
WEBHOOK_SECRET=
3-
STRIPE_METER_CREDIT_USAGE_METER_ID=
4-
STRIPE_PRODUCT_BASIC_LICENSE_MONTHLY_PRICE_ID=
5-
STRIPE_PRODUCT_BASIC_LICENSE_YEARLY_PRICE_ID=
6-
STRIPE_PRODUCT_BASIC_MONTHLY_METER_CREDIT_USAGE_PRICE_ID=
7-
STRIPE_PRODUCT_PRO_LICENSE_MONTHLY_PRICE_ID=
8-
STRIPE_PRODUCT_PRO_LICENSE_YEARLY_PRICE_ID=
9-
STRIPE_PRODUCT_PRO_MONTHLY_METER_CREDIT_USAGE_PRICE_ID=
10-
STRIPE_PRODUCT_PREMIUM_LICENSE_MONTHLY_PRICE_ID=
11-
STRIPE_PRODUCT_PREMIUM_LICENSE_YEARLY_PRICE_ID=
12-
STRIPE_PRODUCT_PREMIUM_MONTHLY_METER_CREDIT_USAGE_PRICE_ID=
1+
# Stripe Configuration
2+
# Get these from your Stripe Dashboard: https://dashboard.stripe.com/apikeys
3+
STRIPE_API_KEY=sk_test_your_stripe_secret_key_here
4+
STRIPE_WEBHOOK_SECRET=whsec_your_webhook_secret_here
5+
6+
# Stripe Product and Price IDs
7+
# Create these in your Stripe Dashboard under Products & Prices
8+
# You can use the convinience script in /packages/core/src/stripe/scripts/createObjects.ts
9+
# To generate these if you start from a fresh stripe account
10+
STRIPE_METER_CREDIT_USAGE_METER_ID=price_your_meter_credit_price_id_here
11+
STRIPE_PRODUCT_BASIC_MONTHLY_PRICE_ID=price_basic_monthly_price_id_here
12+
STRIPE_PRODUCT_PRO_MONTHLY_PRICE_ID=price_pro_monthly_price_id_here
13+
STRIPE_PRODUCT_PRO_YEARLY_PRICE_ID=price_pro_yearly_price_id_here
14+
STRIPE_PRODUCT_PREMIUM_MONTHLY_PRICE_ID=price_premium_monthly_price_id_here
15+
STRIPE_PRODUCT_PREMIUM_YEARLY_PRICE_ID=price_premium_yearly_price_id_here
16+
17+
# Development/Testing Flags, for convenience
18+
SKIP_OTP=true
19+
EMAIL_USE_CONSOLE=true
20+
GCP_USE_FAKE_GCS_SERVER=true

README.md

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
# StackCore
2+
3+
A code dependency analysis and visualization platform that helps developers
4+
understand, audit, and optimize their codebase architecture through interactive
5+
visualizations and automated analysis.
6+
7+
## 🚀 Quick Start
8+
9+
### Prerequisites
10+
11+
- [Deno](https://deno.land/) v2.3.5+
12+
- [Docker](https://docker.com)
13+
14+
### Setup for local devlopment
15+
16+
1. **Setup Stripe objects**
17+
18+
Create a Stripe account and set up the required Stripe objects (products,
19+
prices, and meters). You can use the convenience script at
20+
[packages/core/src/stripe/scripts/createObjects.ts](packages/core/src/stripe/scripts/createObjects.ts).
21+
22+
Run the script and follow the prompts - it will create all the necessary
23+
objects and output their IDs which you'll need for the next step.
24+
25+
1. **Create `.env` file**
26+
27+
Copy `.env.example` content into a `.env` file and fill in the missing
28+
variables.
29+
30+
1. **Start services**
31+
32+
```bash
33+
# database
34+
deno task db:docker
35+
deno task db:migrate
36+
37+
# Terminal 1: stripe CLI to forward webhook to the API
38+
deno task stripe:forward
39+
40+
# Terminal 2: Fake gcs bucket
41+
deno task bucket:mock
42+
43+
# Terminal 3: API
44+
deno task dev:core
45+
46+
# Terminal 4: APP
47+
deno task dev:app
48+
```
49+
50+
### Unit test
51+
52+
Before running the test, you need:
53+
54+
```bash
55+
# mock stripe API
56+
deno task stripe:mock
57+
58+
# mock gcs bucker
59+
deno task bucket:mock
60+
61+
# then run the test
62+
deno task test
63+
```
64+
65+
## 📊 What StackCore Does
66+
67+
- **Dependency Visualization**: Interactive graphs showing file and symbol-level
68+
dependencies
69+
- **Code Metrics**: Cyclomatic complexity, line counts, dependency analysis
70+
- **Audit Reports**: Automated detection of code quality issues
71+
- **Multi-level Analysis**: Project, file, and symbol-level insights
72+
73+
### Architecture
74+
75+
- **`@stackcore/core`**: Backend API (Deno + Oak)
76+
- **`@stackcore/app`**: Frontend (React + Cytoscape.js)
77+
78+
## 📝 License
79+
80+
[Add your license information here]

0 commit comments

Comments
 (0)