Skip to content

Commit 5d2f859

Browse files
committed
full project
0 parents  commit 5d2f859

13 files changed

Lines changed: 3957 additions & 0 deletions

.gitignore

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# macOS
2+
.DS_Store
3+
.AppleDouble
4+
.LSOverride
5+
._*
6+
7+
# Windows
8+
Thumbs.db
9+
ehthumbs.db
10+
Desktop.ini
11+
12+
# Linux
13+
*~
14+
15+
# Editor directories and files
16+
.idea/
17+
.vscode/
18+
*.suo
19+
*.ntvs*
20+
*.njsproj
21+
*.sln
22+
*.sw?
23+
24+
# Logs
25+
*.log
26+
npm-debug.log*
27+
28+
# Local environment overrides (if you ever add a build step)
29+
.env
30+
.env.local
31+
.env.*.local
32+
33+
# Node (if a build step is added later)
34+
node_modules/
35+
dist/
36+
.cache/
37+
38+
# OS generated
39+
.Spotlight-V100
40+
.Trashes

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 ProposalForge Contributors
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 191 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,191 @@
1+
# ProposalForge
2+
3+
**The Most Elegant & Intelligent Proposal Generator**
4+
5+
> Proposals That Win Clients — Free, Open Source, No Login Required
6+
7+
[![License: MIT](https://img.shields.io/badge/License-MIT-7c5cff.svg)](LICENSE)
8+
[![Made with Vanilla JS](https://img.shields.io/badge/Made%20with-Vanilla%20JS-f0db4f)](https://developer.mozilla.org/en-US/docs/Web/JavaScript)
9+
[![Tailwind CSS](https://img.shields.io/badge/Tailwind%20CSS-CDN-38bdf8)](https://tailwindcss.com)
10+
11+
---
12+
13+
## ✦ What is ProposalForge?
14+
15+
ProposalForge is a premium, client-side-only proposal generator that lets freelancers, agencies, and small businesses create breathtaking, professional proposals in minutes — not hours.
16+
17+
It feels like a **$149/month SaaS tool** (like PandaDoc or Qwilr), but it's **completely free and open source**, runs entirely in your browser with no backend, no login, and no data ever leaving your device.
18+
19+
---
20+
21+
## ✦ Features
22+
23+
### 🤖 Smart AI Builder
24+
Paste your project brief → ProposalForge generates a complete, professional proposal in seconds. Powered by Claude AI with an intelligent offline fallback — works without an API key.
25+
26+
### 📐 6 Luxury Templates
27+
- **Modern** — Clean and sharp
28+
- **Luxury** — Elevated and refined
29+
- **Corporate** — Bold and authoritative
30+
- **Creative** — Vibrant and expressive
31+
- **Minimal** — Quiet and precise
32+
- **Tech** — Dark and technical
33+
34+
### ⚡ Live Split Preview
35+
Real-time preview updates as you type — see exactly what your client will receive.
36+
37+
### 💰 Pricing Packages Builder
38+
Create Basic / Standard / Premium pricing tiers with smart auto-recommendation based on brief analysis. Line-item table with automatic tax, discount, and grand total calculation.
39+
40+
### 🎨 Deep Customisation
41+
- 12 curated accent colors + custom color picker
42+
- Company logo upload (PNG, SVG, JPG)
43+
- Per-template typography and layout
44+
- Dark & light mode with persistent preference
45+
46+
### 📄 One-Click PDF Export
47+
High-quality, print-ready PDF export at 2× DPI using html2canvas + jsPDF. Perfect A4 formatting with multi-page support.
48+
49+
### 💾 Local Save / Load
50+
Save up to 20 proposals locally using localStorage. No account needed — your data stays on your device.
51+
52+
---
53+
54+
## ✦ Quick Start
55+
56+
```bash
57+
# Clone the repository
58+
git clone https://github.com/proposalforge/proposalforge.git
59+
cd proposalforge
60+
61+
# Open in browser (no build step needed)
62+
open index.html
63+
# or serve locally:
64+
npx serve .
65+
```
66+
67+
That's it. No `npm install`, no build tools, no environment variables.
68+
69+
---
70+
71+
## ✦ Project Structure
72+
73+
```
74+
proposalforge/
75+
├── index.html # App shell + Alpine.js markup
76+
├── css/
77+
│ └── style.css # Global styles, preview themes, animations
78+
├── js/
79+
│ ├── main.js # Alpine.js root component (app controller)
80+
│ ├── proposal-data.js # Default data structures, templates, colors
81+
│ ├── preview-renderer.js # Live preview HTML generator
82+
│ ├── smart-builder.js # AI + offline proposal generation engine
83+
│ ├── pricing-packages.js # Pricing logic, totals, package management
84+
│ ├── pdf-export.js # html2canvas + jsPDF export pipeline
85+
│ └── utils.js # Shared utility functions
86+
├── assets/
87+
│ └── icons/ # SVG icon assets (inline in HTML)
88+
├── README.md
89+
├── LICENSE
90+
└── .gitignore
91+
```
92+
93+
---
94+
95+
## ✦ Tech Stack
96+
97+
| Layer | Technology |
98+
|-------------|-----------------------------------|
99+
| Markup | HTML5, semantic & accessible |
100+
| Styling | Tailwind CSS (CDN) + custom CSS |
101+
| Reactivity | Alpine.js v3 (CDN) |
102+
| PDF | jsPDF + html2canvas (CDN) |
103+
| AI | Anthropic Claude API (optional) |
104+
| Storage | Browser localStorage |
105+
| Build | None — runs from the file system |
106+
107+
---
108+
109+
## ✦ AI Smart Builder
110+
111+
ProposalForge uses the **Anthropic Claude API** for its Smart Builder feature. The app works in two modes:
112+
113+
### Online Mode (Claude API)
114+
When the Anthropic API is reachable, ProposalForge sends your brief to `claude-sonnet-4-20250514` and receives a structured proposal with intelligent sections and market-rate pricing.
115+
116+
### Offline Mode (Always works)
117+
If the API is unavailable (no key, rate limit, network issue), the app automatically falls back to a sophisticated local generator that:
118+
- Detects your project type from keywords (website, branding, mobile app, etc.)
119+
- Extracts budget and timeline signals
120+
- Assesses project complexity
121+
- Generates professional, customised proposal copy
122+
- Calculates realistic agency pricing
123+
124+
**You never see an error** — the fallback is seamless.
125+
126+
---
127+
128+
## ✦ Customisation
129+
130+
### Adding a New Template
131+
1. Add an entry to `TEMPLATES` in `js/proposal-data.js`
132+
2. Add CSS rules for `.tpl-yourname` in `css/style.css`
133+
3. Add a render branch in `preview-renderer.js``buildHeader()`
134+
135+
### Changing Default Accent Colors
136+
Edit the `ACCENT_COLORS` array in `js/proposal-data.js`.
137+
138+
### Changing Default Proposal Structure
139+
Edit `createNewProposal()` in `js/proposal-data.js`.
140+
141+
---
142+
143+
## ✦ Browser Support
144+
145+
| Browser | Support |
146+
|---------|---------|
147+
| Chrome | ✅ Full |
148+
| Firefox | ✅ Full |
149+
| Safari | ✅ Full |
150+
| Edge | ✅ Full |
151+
152+
PDF export uses `html2canvas` which works best in Chromium-based browsers. For best PDF quality, use Chrome or Edge.
153+
154+
---
155+
156+
## ✦ Privacy
157+
158+
ProposalForge is **100% client-side**. Your proposal data never leaves your browser unless:
159+
1. You explicitly use the AI Smart Builder (brief text is sent to Anthropic's API)
160+
2. You export a PDF (processed locally)
161+
162+
No analytics, no tracking, no ads.
163+
164+
---
165+
166+
## ✦ Contributing
167+
168+
Pull requests are welcome! For major changes, please open an issue first to discuss what you'd like to change.
169+
170+
```bash
171+
# Fork and clone
172+
git clone https://github.com/yourusername/proposalforge.git
173+
174+
# Create a feature branch
175+
git checkout -b feature/amazing-new-template
176+
177+
# Make your changes, then open a PR
178+
```
179+
180+
---
181+
182+
## ✦ License
183+
184+
MIT — see [LICENSE](LICENSE) for details.
185+
186+
---
187+
188+
<div align="center">
189+
<strong>ProposalForge</strong> · Built with care for freelancers everywhere<br>
190+
<em>"Proposals That Win Clients"</em>
191+
</div>

assets/icons/icon.svg

Lines changed: 6 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)