ISeekYou is a modern, decentralized instant messaging app inspired by the nostalgia of ICQ. It allows users to connect with friends, send real-time messages, and share files—all while maintaining privacy and control over their data.
- Decentralized: Built with privacy and user control in mind.
- Real-Time Messaging: Send and receive messages instantly.
- User Accounts: Create an account and log in securely. (Coming in v0.04)
- Typing Indicators: See when your contacts are typing. (Coming in v0.175)
- Contact Management: Add friends by unique ID or search by name/email. (Coming in v0.3)
- File Sharing: Send and receive files (images, documents, audio snippets). (Coming in v0.4)
- Customizable UI: Light/dark themes and skinned windows. (Coming in v0.5)
Check out our roadmap to see what’s coming next!
Before you blast into the past, ensure you have:
- Node.js 18+ (Get it here)
- npm or yarn (Legends prefer
npm, but we won’t judge) - Git (For cloning, unless you’re downloading the ZIP like it’s 1999)
-
Clone the repo (or download the ZIP and extract it):
git clone https://github.com/Ayelis/iSeekYou.git cd iSeekYou -
Install dependencies (This might take a minute—imagine it’s dial-up):
npm install
-
Optional: If you’re using Electron Builder for packaging:
npm install electron-builder --save-dev
npm run dev- Launches Vite’s dev server (React) + Electron in watch mode.
- Changes update instantly—no need to smash F5 like it’s Windows 98.
npm run build
npm run electron:start- Builds the app into
/dist(thanks to Vite). - Launches the production-ready Electron app.
npm run electron:build- Generates installers (
.exe,.dmg, etc.) in/release. - Configure outputs in
electron-builder.yml(add this file if needed).
- Stuck? Check
debug.log(or yell at your screen like it’s a CRT monitor). - Want to customize? Edit:
vite.config.js→ React/Vite settingselectron/main.js→ Electron’s entry point
iseekyou/
├── index.html (Vite's main HTML, edited directly)
├── public/ (Static assets, copied as-is to /dist)
│ ├── assets/ (Images, fonts, etc.)
│ ├── favicon.ico (If not using a React-based favicon)
│ └── ... (Other front-end files)
├── src/ (React/Vite processed files)
│ ├── App.jsx
│ ├── main.jsx (Entry point, imports CSS/JS)
│ └── styles/ (CSS-in-JS/modules, preferred over /public/css)
├── dist/ (Generated by Vite, ignored by Git)
├── README.md (You are here!)
├── LICENSE.md (MIT License)
├── CONTRIBUTING.md (Contributing Guidelines)
└── ROADMAP.md (Project roadmap)
We welcome contributions! Here’s how you can help:
- Fork the repository.
- Create a new branch (
git checkout -b feature/YourFeature). - Commit your changes (
git commit -m 'Add some feature'). - Push to the branch (
git push origin feature/YourFeature). - Open a pull request.
Please read our contributing guidelines for more details.
This project is licensed under the MIT License. See the LICENSE file for details.
- Inspired by the simplicity and nostalgia of ICQ.
- Built with ❤️ and JavaScript.
Have questions or feedback? Reach out to us at:
- GitHub: @Ayelis
- Email: s.mattison@gmail.com
- BSky: @Ayelis
- LinkedIn: @smattison
- Twitter: @Ayelis