CoinCast

A powerful web application for cryptocurrency price forecasting with an intuitive interface.
✨ Features
- Multi-Crypto Support: Fetch and analyze prices for various cryptocurrencies.
- Real-Time Data Fetching: Get up-to-date cryptocurrency prices instantly.
- Price Predictions: Predict future price trends using advanced algorithms.
- Web-Based Interface: Accessible from any device with a browser.
- Linear Regression Predictions: Predict future price trends using linear regression models.
- Simple and Fast: Analyze crypto data in the blink of an eye.
- Cross-Platform: Works seamlessly on Windows, macOS, and Linux.
- Containerized: Available as a Docker image for easy deployment.
- Comprehensive Testing: Thoroughly tested for reliability.
🛠️ Installation
Using Docker (Recommended)
Docker image available at: Docker Hub - oheyek/coin-cast
- Pull the Docker image:
docker pull oheyek/coin-cast
- Run the container:
docker run -p 5000:5000 oheyek/coin-cast
- Open your browser and go to
http://localhost:5000
Running from Source
# Clone the repository
git clone https://github.com/oheyek/CoinCast.git
cd CoinCast
# Install dependencies
pip install -r requirements.txt
# Run the application
python app.py
🎯 Usage
- Open the application in your browser (locally only).
- Select a cryptocurrency to analyze.
- View real-time prices and predictions.
- Explore forecast trends instantly.
📋 Supported Cryptocurrencies
| Category | Cryptocurrencies Available |
|---|
| Major | Bitcoin (BTC), Ethereum (ETH), etc. |
| Altcoins | Litecoin (LTC), Ripple (XRP), etc. |
⚠️ Disclaimer
This project is for educational and portfolio purposes only. It is not intended as financial or investment advice. Cryptocurrency investments are highly volatile and risky. Always do your own research and consult with a financial advisor before making investment decisions.
🔧 Technical Details
- Language: Python 3.14+
- Web Framework: Flask 3.1.2+
- WSGI Server: Gunicorn 23.0.0+
- Testing: pytest 9.0.2+
- Deployment: Docker
Key Dependencies
flask>=3.1.2
gunicorn>=23.0.0
pytest>=9.0.2
🏗️ Building from Source
Docker Build
# Build the Docker image
docker build -t coin-cast .
# Run the container
docker run -p 5000:5000 coin-cast
🗂️ Project Structure
CoinCast/
├── app.py # Flask application entry point
├── src/
│ ├── __init__.py
│ ├── fetch_crypto.py # Crypto data fetching logic
│ ├── predict.py # Prediction algorithms
│ └── tests/
│ ├── __init__.py
│ ├── test_fetch_crypto.py # Fetching tests
│ └── test_predict.py # Prediction tests
├── static/
│ ├── css/
│ │ └── style.css # Stylesheets
│ └── img/
│ ├── icon-doxygen.png
│ ├── icon.ico
│ └── icon.png # Icons
├── templates/
│ ├── base.html # Base template
│ └── index.html # Home page
├── pyproject.toml # Project configuration
├── requirements.txt # Python dependencies
├── Dockerfile # Docker configuration
├── LICENSE # MIT License
└── README.md # This file
🧪 Testing
The project includes simple unit tests for all fetching and prediction functions.
Running Tests
# Install test dependencies
pip install pytest
# Run all tests
pytest
# Run specific test file
pytest tests/test_fetch_crypto.py
# Run with verbose output
pytest -v
🤝 Contributions
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create a new feature branch (
git checkout -b feature/amazing-feature)
- Commit your changes (
git commit -m 'Add amazing feature')
- Push to the branch (
git push origin feature/amazing-feature)
- Open a Pull Request
📄 License
This project is open-source and available under the MIT License.
Happy Forecasting! 🎉
Author
Made with ❤️ by ohey

Due to the short limit of the free API, the site is not deployed as it can even get data once. If you find this project useful, consider buying me a coffee! ☕