Skip to content

Commit 740d03f

Browse files
authored
Merge pull request #19 from ACTA-Team/develop
develop to main
2 parents 8f1befd + 26af14d commit 740d03f

13 files changed

Lines changed: 345 additions & 45 deletions

File tree

.github/workflows/pr-checks.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ jobs:
1515
- name: Setup Node.js
1616
uses: actions/setup-node@v4
1717
with:
18-
node-version: '20'
19-
cache: 'npm'
18+
node-version: "20"
19+
cache: "npm"
2020
cache-dependency-path: package-lock.json
2121

2222
- name: Install dependencies
@@ -35,8 +35,8 @@ jobs:
3535
- name: Setup Node.js
3636
uses: actions/setup-node@v4
3737
with:
38-
node-version: '20'
39-
cache: 'npm'
38+
node-version: "20"
39+
cache: "npm"
4040
cache-dependency-path: package-lock.json
4141

4242
- name: Install dependencies

README.md

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,27 +9,31 @@ ACTA Web provides a sophisticated frontend experience for managing verifiable cr
99
## Key Features
1010

1111
### Passkey Authentication
12+
1213
- **WebAuthn Integration**: Industry-standard biometric authentication
1314
- **No Seed Phrases**: Secure wallet creation without traditional crypto complexity
1415
- **Cross-Device Sync**: Passkeys work seamlessly across all your devices
1516
- **Stellar Wallet Generation**: Automatic wallet creation from biometric data
1617
- **Enhanced Security**: Private keys never leave your device
1718

1819
### Modern UI/UX
20+
1921
- **Particle Background System**: Dynamic animated particles throughout the app
2022
- **Glass Morphism Design**: Transparent elements with backdrop blur effects
2123
- **Responsive Layout**: Mobile-first design that works on all screen sizes
2224
- **Dark Theme**: Elegant dark interface optimized for usability
2325
- **Smooth Animations**: Fluid transitions and micro-interactions
2426

2527
### Credential Management
28+
2629
- **Create Verifiable Credentials**: Issue tamper-proof credentials on blockchain
2730
- **Credential Dashboard**: Comprehensive view of all your credentials
2831
- **Search and Filter**: Find credentials quickly with advanced search
2932
- **Public Verification**: Share verification links for instant credential validation
3033
- **Status Management**: Track credential lifecycle and expiration
3134

3235
### API Integration
36+
3337
- **Secure API Keys**: Generate and manage authentication keys
3438
- **Real-time Sync**: Live updates from the ACTA blockchain network
3539
- **RESTful Architecture**: Clean integration with backend services
@@ -38,25 +42,29 @@ ACTA Web provides a sophisticated frontend experience for managing verifiable cr
3842
## Tech Stack
3943

4044
### Core Framework
45+
4146
- **Next.js 15.5.0** with App Router and Turbopack
4247
- **React 19** with modern hooks and concurrent features
4348
- **TypeScript** for comprehensive type safety
4449
- **Tailwind CSS** for utility-first styling
4550

4651
### Authentication & Blockchain
52+
4753
- **WebAuthn** for passkey implementation
4854
- **Stellar SDK** for blockchain interactions
4955
- **Custom Wallet Management** via passkey-derived keys
5056
- **JWT Authentication** for session management
5157

5258
### UI Components
59+
5360
- **Radix UI** primitives for accessibility
5461
- **shadcn/ui** component library
5562
- **Lucide React** for icon system
5663
- **Framer Motion** for animations
5764
- **Custom Particle System** for background effects
5865

5966
### Development Tools
67+
6068
- **ESLint** with custom configuration
6169
- **Prettier** for code formatting
6270
- **Husky** for git hooks
@@ -65,6 +73,7 @@ ACTA Web provides a sophisticated frontend experience for managing verifiable cr
6573
## Getting Started
6674

6775
### Prerequisites
76+
6877
- Node.js 18 or higher
6978
- npm or yarn package manager
7079
- Modern browser with WebAuthn support
@@ -159,6 +168,7 @@ src/
159168
## Authentication Flow
160169

161170
### Passkey Registration
171+
162172
1. User visits application homepage
163173
2. Clicks "Authenticate with Passkey"
164174
3. Browser prompts for biometric authentication
@@ -168,6 +178,7 @@ src/
168178
7. User automatically logged in and redirected to dashboard
169179

170180
### Passkey Login
181+
171182
1. Returning user visits homepage
172183
2. Clicks "Authenticate with Passkey"
173184
3. Browser recognizes existing passkey
@@ -192,19 +203,22 @@ src/
192203
## Security Features
193204

194205
### Passkey Security
206+
195207
- **Hardware-Backed Keys**: Stored in secure hardware (TPM, Secure Enclave)
196208
- **Biometric Gating**: Access requires fingerprint, face, or PIN
197209
- **Phishing Resistant**: Domain-bound authentication prevents attacks
198210
- **No Shared Secrets**: No passwords or seed phrases to compromise
199211

200212
### Application Security
213+
201214
- **HTTPS Enforcement**: All communications encrypted in transit
202215
- **JWT Tokens**: Secure session management with expiration
203216
- **Input Validation**: Comprehensive sanitization of user inputs
204217
- **CORS Protection**: Proper cross-origin resource sharing controls
205218
- **Content Security Policy**: XSS and injection attack prevention
206219

207220
### Blockchain Security
221+
208222
- **Immutable Storage**: Credentials permanently stored on Stellar
209223
- **Cryptographic Proofs**: Mathematical verification of authenticity
210224
- **Decentralized Verification**: No central authority required
@@ -213,12 +227,14 @@ src/
213227
## Deployment
214228

215229
### Vercel (Recommended)
230+
216231
1. Connect repository to Vercel
217232
2. Configure environment variables in dashboard
218233
3. Enable automatic deployments on main branch
219234
4. Production URL provided automatically
220235

221236
### Manual Deployment
237+
222238
```bash
223239
# Build application
224240
npm run build
@@ -228,6 +244,7 @@ npm run start
228244
```
229245

230246
### Docker Deployment
247+
231248
```bash
232249
# Build Docker image
233250
docker build -t acta-web .
@@ -239,12 +256,14 @@ docker run -p 3000:3000 acta-web
239256
## Browser Support
240257

241258
### Passkey Compatibility
259+
242260
- **Chrome**: 67+ (Windows, macOS, Android)
243261
- **Safari**: 14+ (macOS, iOS)
244262
- **Firefox**: 60+ (Windows, macOS)
245263
- **Edge**: 79+ (Windows)
246264

247265
### Platform Support
266+
248267
- **Windows**: Windows Hello (Windows 10+)
249268
- **macOS**: Touch ID, Face ID
250269
- **iOS**: Touch ID, Face ID
@@ -254,13 +273,15 @@ docker run -p 3000:3000 acta-web
254273
## Performance
255274

256275
### Optimization Features
276+
257277
- **Turbopack**: Ultra-fast build system for development
258278
- **App Router**: Optimized routing with React Server Components
259279
- **Image Optimization**: Automatic WebP conversion and lazy loading
260280
- **Code Splitting**: Automatic bundle optimization
261281
- **Static Generation**: Pre-rendered pages for optimal performance
262282

263283
### Bundle Analysis
284+
264285
```bash
265286
# Analyze bundle size
266287
npm run analyze
@@ -272,6 +293,7 @@ npm run lighthouse
272293
## Contributing
273294

274295
### Development Workflow
296+
275297
1. Fork the repository
276298
2. Create feature branch (`git checkout -b feature/awesome-feature`)
277299
3. Make changes following code style guidelines
@@ -282,6 +304,7 @@ npm run lighthouse
282304
8. Create Pull Request
283305

284306
### Code Standards
307+
285308
- **TypeScript**: Strict mode enabled, comprehensive typing
286309
- **ESLint**: Custom configuration with React and Next.js rules
287310
- **Prettier**: Automatic code formatting on save
@@ -293,30 +316,35 @@ npm run lighthouse
293316
The frontend integrates with the ACTA API for:
294317

295318
### Authentication Endpoints
319+
296320
- `POST /v1/auth/register` - Passkey registration
297321
- `POST /v1/auth/login` - Passkey authentication
298322
- `GET /v1/auth/profile` - User profile data
299323

300324
### Credential Endpoints
325+
301326
- `POST /v1/credentials` - Create new credentials
302327
- `GET /v1/credentials` - List user credentials
303328
- `GET /v1/credentials/:id` - Get credential details
304329
- `POST /v1/verify` - Verify credential authenticity
305330

306331
### API Key Endpoints
332+
307333
- `POST /v1/api-keys/generate` - Generate new API key
308334
- `GET /v1/api-keys` - List user API keys
309335
- `DELETE /v1/api-keys/:id` - Revoke API key
310336

311337
## Monitoring and Analytics
312338

313339
### Performance Monitoring
340+
314341
- **Web Vitals**: Core web vitals tracking
315342
- **Real User Monitoring**: Performance data from actual users
316343
- **Error Tracking**: Comprehensive error logging and alerting
317344
- **Bundle Analysis**: Regular bundle size monitoring
318345

319346
### User Analytics
347+
320348
- **Conversion Tracking**: Authentication flow completion rates
321349
- **Feature Usage**: Most used features and user journeys
322350
- **Performance Metrics**: Page load times and user experience
@@ -328,6 +356,7 @@ This project is part of the ACTA ecosystem for verifiable credentials on Stellar
328356
## Support
329357

330358
For questions, issues, or contributions:
359+
331360
- **GitHub Issues**: Technical problems and feature requests
332361
- **Documentation**: Comprehensive guides and API reference
333-
- **Community**: Join our developer community discussions
362+
- **Community**: Join our developer community discussions

package-lock.json

Lines changed: 18 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

public/robots.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# robots.txt for acta.build
2+
User-agent: *
3+
Allow: /
4+
5+
# Sitemap
6+
Sitemap: https://acta.build/sitemap.xml

0 commit comments

Comments
 (0)