Skip to content

Commit 1cc7185

Browse files
committed
feat: currency system, mobile responsive, UI polish, repo cleanup
1 parent 00032a6 commit 1cc7185

30 files changed

Lines changed: 1141 additions & 906 deletions

.gitignore

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,10 @@ contracts/node_modules/
162162
secrets.json
163163

164164
# Personal data files
165-
demo-data.json
166-
personal-data.json
167165
data-miky.json
166+
personal-data.json
167+
demo-data.json
168+
169+
# Backup files in source
170+
src/**/*.backup
171+
src/**/*.backup.*

LICENSE

Lines changed: 21 additions & 108 deletions
Original file line numberDiff line numberDiff line change
@@ -1,108 +1,21 @@
1-
# 📜 **3ASYAPP Template License**
2-
3-
**Copyright © 2025 Michele Miky Monti**
4-
All rights reserved.
5-
6-
## License Overview
7-
8-
This template is available under a commercial license model with different tiers for different use cases.
9-
10-
## Permitted Uses
11-
12-
### ✅ Free Personal Use
13-
- ✓ Learning and evaluation purposes
14-
- ✓ Personal non-commercial projects
15-
- ✓ Portfolio demonstrations
16-
- ✓ Code study and reference
17-
18-
**Requirements:** Attribution required
19-
20-
### 💼 Professional License (Paid)
21-
- ✓ Single commercial project use
22-
- ✓ Full source code access
23-
- ✓ Modifications and customizations
24-
- ✓ Priority email support
25-
- ✓ Updates and bug fixes
26-
- ✓ Implementation assistance
27-
28-
**Contact for pricing:** michele.monti@me.com
29-
30-
### 🏢 Enterprise License (Custom Pricing)
31-
- ✓ Unlimited commercial projects
32-
- ✓ White-label rights
33-
- ✓ Team licensing
34-
- ✓ Dedicated support channel
35-
- ✓ Custom development assistance
36-
- ✓ SLA guarantees
37-
- ✓ Team training included
38-
39-
**Contact for pricing:** michele.monti@me.com
40-
41-
## Restrictions
42-
43-
### ❌ Prohibited Without License:
44-
- Commercial use (requires Professional or Enterprise license)
45-
- Distribution or resale of the template
46-
- Sublicensing to third parties
47-
- Creating competing template products
48-
- Providing template-as-a-service
49-
- Removing copyright notices
50-
51-
## License Terms
52-
53-
### Attribution
54-
55-
All uses require attribution to Michele Miky Monti:
56-
- In the application footer or about page
57-
- In the source code comments
58-
- Format: "Built with 3ASYAPP Template by Michele Miky Monti"
59-
60-
### Modifications
61-
62-
You may modify the template for your licensed projects, but:
63-
- Modified versions are still subject to this license
64-
- You cannot distribute modified versions as templates
65-
- Copyright notices must remain intact
66-
67-
### Updates
68-
69-
Licensed users receive:
70-
- Bug fixes and security updates
71-
- Feature enhancements (Professional & Enterprise)
72-
- Migration guides for major versions
73-
- Technical support based on license tier
74-
75-
## Warranty Disclaimer
76-
77-
**THE TEMPLATE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.**
78-
79-
## Limitation of Liability
80-
81-
**IN NO EVENT SHALL MICHELE MIKY MONTI BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE TEMPLATE OR THE USE OR OTHER DEALINGS IN THE TEMPLATE.**
82-
83-
## Acquiring a License
84-
85-
### To Purchase:
86-
1. **Email:** michele.monti@me.com
87-
2. **Website:** https://michelemonti.me
88-
3. **GitHub:** https://github.com/michelemonti
89-
90-
### License Delivery:
91-
- Digital license certificate
92-
- Invoice for business accounting
93-
- Access to private support channels
94-
- Documentation and setup assistance
95-
96-
## Questions?
97-
98-
For license inquiries, custom arrangements, or any questions:
99-
100-
**Michele Miky Monti**
101-
- Email: michele.monti@me.com
102-
- Website: https://michelemonti.me
103-
- GitHub: https://github.com/michelemonti
104-
- Repository: https://github.com/michelemonti/3ASYAPPS
105-
106-
---
107-
108-
*Last updated: October 2025 - Template Version 2.0*
1+
MIT License
2+
3+
Copyright (c) 2025 Michele Miky Monti
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.

docs/CONTRIBUTING.md

Lines changed: 5 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,7 @@
22

33
Thank you for your interest in contributing to **3ASYWEALTH**! This document provides guidelines and information for contributors.
44

5-
> **📢 Important Note**: This project is based on the **3ASYAPP template** by Miky.
6-
> -**Personal/Open Source use**: Completely free
7-
> - 💰 **Commercial use**: Requires a commercial license from the template creator
8-
> - See the [License & Usage Rights](#-license--usage-rights) section below for details.
5+
> **📢 Note**: This project is licensed under the **MIT License**. All contributions are welcome!
96
107
## 🎯 Project Philosophy
118

@@ -351,47 +348,24 @@ To maintain the privacy-first philosophy:
351348
352349
### About This Project
353350
354-
This project is based on the **3ASYAPP** template created by [Miky](https://github.com/michelemonti).
351+
This project is created by [Miky Monti](https://github.com/michelemonti) and licensed under the **MIT License**.
355352
356353
### License Terms
357354
358355
By contributing, you agree that your contributions will be licensed under the same **MIT License** that covers the project.
359356
360-
**Important for forks and derivatives**:
361-
362-
#### ✅ Free Usage (No License Required)
363-
- **Personal use**: Track your own wealth, completely free
364-
- **Open source projects**: Fork, modify, share freely
365-
- **Educational purposes**: Learning, teaching, research
366-
- **Non-profit organizations**: Community projects, NGOs
367-
368-
#### 💰 Commercial Usage (License Required)
369-
If you plan to use this project for commercial purposes, you **must obtain a commercial license** from the original template creator:
370-
371-
**Commercial use includes**:
372-
- ❌ Selling the software or derived versions
373-
- ❌ Offering paid services based on this codebase
374-
- ❌ Using within commercial/enterprise applications
375-
- ❌ Monetizing through ads, subscriptions, or fees
376-
- ❌ White-labeling for clients
377-
378-
**How to get a commercial license**:
379-
Contact the original template creator at [3ASYAPP repository](https://github.com/michelemonti/3asyapp) to discuss commercial licensing terms.
380-
381-
#### 📋 Attribution Required
357+
#### 📋 Attribution
382358
When forking or redistributing:
383359
- ✅ Keep the original copyright notice
384-
- ✅ Credit the original template: "Based on 3ASYAPP by Miky"
385-
- ✅ Link to the original template repository
360+
- ✅ Credit the original author
386361
- ✅ Maintain the MIT license file
387362
388363
### Why This Matters
389364
390-
The template creator invested significant time and effort to build a robust, privacy-first architecture. Respecting the license terms ensures:
365+
The project creator invested significant time and effort to build a robust, privacy-first architecture. Respecting the license terms ensures:
391366
- 🎨 Continued development and maintenance
392367
- 🔒 Quality standards and security updates
393368
- 🌍 A thriving open source community
394-
- ⚖️ Fair compensation for commercial applications
395369
396370
**Bottom line**: Personal and educational use is completely free. Commercial ventures need a proper license.
397371

package.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@
1010
"type": "git",
1111
"url": "https://github.com/michelemonti/3asywealth.git"
1212
},
13+
"homepage": "https://wealth.3asy.app",
14+
"bugs": {
15+
"url": "https://github.com/michelemonti/3asywealth/issues"
16+
},
1317
"keywords": [
1418
"wealth",
1519
"finance",

src/App.tsx

Lines changed: 35 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,56 @@
11
/**
22
* Main App Component
33
*
4-
* Simple routing for 3ASYWEALTH
4+
* Lazy-loaded routing for 3ASYWEALTH
55
*
6-
* @version 1.0
6+
* @version 2.0
77
*/
88

9+
import { lazy, Suspense } from 'react'
910
import { BrowserRouter, Routes, Route } from 'react-router-dom'
1011
import { Toaster } from 'sonner'
1112
import { ErrorBoundary } from './components/ErrorBoundary'
12-
import Landing from './pages/Landing'
1313

14-
import { AssetsTable } from './pages/AssetsTable'
15-
import { WealthSummary } from './pages/WealthSummary'
16-
import About from './pages/About'
17-
import NotFound from './pages/NotFound'
14+
const Landing = lazy(() => import('./pages/Landing'))
15+
const AssetsTable = lazy(() => import('./pages/AssetsTable'))
16+
const WealthSummary = lazy(() => import('./pages/WealthSummary'))
17+
const About = lazy(() => import('./pages/About'))
18+
const NotFound = lazy(() => import('./pages/NotFound'))
19+
20+
function LoadingFallback() {
21+
return (
22+
<div className="min-h-screen bg-background flex items-center justify-center">
23+
<div className="text-center animate-fade-in">
24+
<div className="relative mb-6">
25+
<div className="w-16 h-16 rounded-2xl bg-gradient-to-br from-blue-500 to-purple-600 flex items-center justify-center shadow-lg mx-auto animate-pulse">
26+
<span className="text-white font-bold text-xl">3W</span>
27+
</div>
28+
</div>
29+
<div className="h-1 w-32 mx-auto rounded-full bg-muted overflow-hidden">
30+
<div className="h-full w-1/2 rounded-full bg-gradient-to-r from-blue-500 to-purple-600 animate-shimmer" />
31+
</div>
32+
</div>
33+
</div>
34+
)
35+
}
1836

1937
// App Component
2038
const App = () => (
2139
<ErrorBoundary>
2240
<BrowserRouter>
23-
<Routes>
24-
<Route path="/" element={<Landing />} />
25-
<Route path="/assets" element={<AssetsTable />} />
26-
<Route path="/summary" element={<WealthSummary />} />
27-
<Route path="/about" element={<About />} />
28-
<Route path="*" element={<NotFound />} />
29-
</Routes>
41+
<Suspense fallback={<LoadingFallback />}>
42+
<Routes>
43+
<Route path="/" element={<Landing />} />
44+
<Route path="/assets" element={<AssetsTable />} />
45+
<Route path="/summary" element={<WealthSummary />} />
46+
<Route path="/about" element={<About />} />
47+
<Route path="*" element={<NotFound />} />
48+
</Routes>
49+
</Suspense>
3050
</BrowserRouter>
3151

3252
{/* Toast Notifications */}
33-
<Toaster position="top-right" richColors />
53+
<Toaster position="top-right" richColors closeButton />
3454
</ErrorBoundary>
3555
)
3656

0 commit comments

Comments
 (0)