ChainImpact — это децентрализованная платформа, предназначенная для прозрачного управления благотворительными пожертвованиями. Система построена на основе смарт-контрактов Ethereum и обеспечивает полный контроль над каждым переводом средств — от донора до конечного назначения.
- Отсутствие прозрачности в распределении благотворительных средств снижает доверие доноров.
- Полная traceability транзакций в блокчейне
- Децентрализованное управление через смарт-контракты
- Веб-интерфейс для доноров и организаций
| Компонент | Технологии |
|---|---|
| Блокчейн | Ethereum (Sepolia Testnet) |
| Смарт-контракты | Solidity, Hardhat |
| Бэкенд | Python (FastAPI) |
| Фронтенд | JavaScript |
| Инструменты | MetaMask, Ethers.js, Web3.py |
Для запуска нашего проекта локально мы используем докер. После того как склонировали репозиторий, запускаем контейнеры:
sudo docker-compose -f docker-compose.yaml up --buildWarning
Не забудьте отредактировать .env
Фронтенд и бэкенд уже запущены, проверить можно по этому адресу http://localhost:5500/. Локальный блокчейн также развернут, можете в терминале увидеть тестовые адреса с балансом
Теперь настроим наши смарт-контракты, для этого откроем второй терминал:
# войдём в контейнер HardHat
docker exec -it hardhat bash
# деплоим проект
npx hardhat run scripts/deploy.js --network localhost
# первоначальная настройка + демонстрация работы
npx hardhat run scripts/interact.js --network localhostВ терминале должен был отобразиться "Адрес кампании: 0x...". Этот адрес нужно скопировать и подставить в переменную TEST_CONTRACT_ADDRESS в файле src/js/project-details.js
// ! МЕНЯТЬ НУЖНО ЗДЕСЬ
const TEST_CONTRACT_ADDRESS = '0xCafac3dD18aC6c6e92c921884f9E4176737C052c' Caution
По умолчанию все транзакции отправляются в Sepolia, поэтому в браузере в консоль разработчика введём команду await setupLocalEnvironment(), чтобы сайт понял, что мы тестируем локально
Смарт-контракты покрыты тестами. Использовали Foundry. Запуск тестов:
git submodule update --init # инициализируем Foundry
forge test -vvv- Токен платформы:
0xd3d81c23db16f15764b5C30cE9fDC0834e9aA05c - Управление платформой:
0xe136c02A8C9BBeAC4A14c17AD254b0Fcc570EAb5
- Муравьева Анастасия — фронтенд разработчик
- Григорьев Владислав — бэкенд разработчик
- Панов Илья — блокчейн инженер
- Козлова Елизавета — блокчейн инженер
Участвовали в хакатоне "Singularity x Башня: Блокчейн-разработка 2025"
Проект распространяется под лицензией MIT. Подробности в файле LICENSE