Skip to content

Commit 6db724a

Browse files
docs(README): simple readme overview of application - detailed documentation + setup will be included before MVP launch
1 parent c4b9442 commit 6db724a

1 file changed

Lines changed: 72 additions & 8 deletions

File tree

README.md

Lines changed: 72 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,79 @@
1-
# AutomaInfracore
1+
# AutomaInfraCore
22

3-
## Setup
3+
[![Swift](https://img.shields.io/badge/Swift-5.9-orange.svg?style=flat&logo=swift)](https://swift.org/)
4+
[![Platforms](https://img.shields.io/badge/Platforms-iOS%20%7C%20macOS-lightgrey.svg)](https://developer.apple.com/)
5+
[![Vapor](https://img.shields.io/badge/Vapor-4-2D68F7.svg?logo=vapor)](https://vapor.codes/)
46

5-
**Local**:
7+
AutomaInfraCore is the core infrastructure powering the Automa application, providing both backend services and shared application components. This monorepo contains everything needed to run the Automa platform, including the server-side components and shared client libraries.
68

7-
1. Create `.env.development`, copy and paste variables from `env.development` note in Automa Obsidian vault
8-
2. Run `npm run compose:up` to start all the services
9+
## 📦 Project Structure
910

10-
**Cloud environment**:
11+
The repository is organized into several main components:
1112

12-
Having a script that automates setting up all hosted environments on fly.io aren't needed, because we will never migrate to another fly.io account. In the future we might migrate to another platform.
13+
### Backend (`/Backend`)
14+
The server-side component built with Vapor 4, providing:
15+
- RESTful API endpoints
16+
- Database models and migrations (PostgreSQL)
17+
- Authentication and authorization
18+
- Background job processing
19+
- Integration with external services (Twitter, OpenAI, etc.)
20+
- Metrics and monitoring (Prometheus, Loki)
1321

14-
1. Run `fly secrets import < .env.sandbox -a automa-backend-sandbox` (replace app and env file names)
22+
### App (`/App`)
23+
Contains the client-side applications and shared components:
24+
- **AutomaApp**: Main iOS/macOS application
25+
- **AutomaAppShared**: Shared code between platforms
26+
- Network layer
27+
- Data models
28+
- Business logic
29+
- **AutomaUIKit**: Shared UI components and theming
1530

31+
### DataTypes (`/Backend/DataTypes`)
32+
Shared data models and type definitions used across the application.
33+
34+
## 🚀 Features
35+
36+
- **Cross-Platform Support**: Native applications for both iOS and macOS
37+
- **Modern Architecture**: Built with Swift 5.9 and Swift Concurrency
38+
- **Scalable Backend**: Powered by Vapor 4 with PostgreSQL
39+
- **AI Integration**: OpenAI integration for intelligent features
40+
- **Social Media Integration**: Twitter API integration
41+
- **Real-time Updates**: WebSocket support for live updates
42+
- **Monitoring**: Built-in metrics and logging
43+
44+
## 🛠️ Technical Stack
45+
46+
- **Backend**: Swift 5.9, Vapor 4, PostgreSQL
47+
- **iOS/macOS**: SwiftUI, Combine, Swift Concurrency
48+
- **Infrastructure**: Docker, AWS (via Soto)
49+
- **CI/CD**: GitHub Actions
50+
- **Monitoring**: Prometheus, Loki
51+
- **Dependencies**:
52+
- Vapor ecosystem (Fluent, Leaf, JWT)
53+
- Alamofire for networking
54+
- OpenAI SDK
55+
- TwitterAPIKit
56+
- SwiftSoup for HTML parsing
57+
58+
## 🔧 Setup (Coming Soon)
59+
60+
A comprehensive setup guide for self-hosting Automa or running it locally will be provided in the future. This will include:
61+
62+
1. Prerequisites and system requirements
63+
2. Database setup and configuration
64+
3. Environment variables and secrets
65+
4. Building and running the backend
66+
5. Building and running the client applications
67+
6. Deployment options
68+
69+
## 🤝 Contributing
70+
71+
Contributions are welcome! Please read our contributing guidelines before submitting pull requests.
72+
73+
## 📄 License
74+
75+
This project is open source and available under the MIT License. See the [LICENSE](LICENSE) file for more information.
76+
77+
## 📬 Contact
78+
79+
For inquiries, please contact [Your Contact Information]

0 commit comments

Comments
 (0)