Skip to content

Simperfy/Barter-system

Repository files navigation

Barter system ⚡️

Barter system using php built using CI4

Features:

  • intended routes (redirect back to previously visited URL after login)
  • form validation (and feedback)
    • login
    • sign up
    • edit profile
    • add/edit item
    • add/edit review
  • place/accept offer
  • login/sign up
  • real-time messaging
  • view items per category
  • view items per user profile
  • search for items
  • place item listing
  • view reviews
  • review history
  • image uploads

  • no front-end framework (pure css/js)
  • uses MVC design pattern

Installation ▶️

Prerequisite

  • Composer

  • PHP version 7.3 or higher is required


Start xampp's apache & mysql

open CMD and type the following:

git clone https://github.com/Simperfy/Barter-system.git

cd Barter-system

composer install

composer setup

composer refresh-db

That's it your done! If there's an error please check Manual Database Installation

start server (using cmd/terminal)

php spark serve

You should see output like this: php spark serve output

Goto http://localhost:8080 to browse the website.

More details

If you need to drop all tables

php spark migrate:rollback

If you need to quickly drop && create tables + populate with fake data

php spark migrate:refresh && php spark db:seed BaseSeeder

or

composer refresh-db


Manual Database Installation ⏩

If the above instruction's composer setup did not work you may try these steps below.


alternative way for composer setup

Start xampp's apache & mysql

xampp output

overwrite .env file

CI_ENVIRONMENT = development
app.baseURL = 'http://localhost:8080/'
database.default.hostname = localhost
database.default.database = barter_system
database.default.username = root
database.default.password = ''
database.default.DBDriver = MySQLi

Create database called barter_system

Goto http://localhost/phpmyadmin

click "new" (located in left most panel)

type "barter_system" (without quotes)

then click "create"

barter_system should now appear in the list of of your databases:

phpmyadmin output

migrate database

php spark migrate

php spark db:seed BaseSeeder

check results

your users table should look like this: users table output


Troubleshooting ❗️

In case you got an error like below:

composer install error

open C:\xampp\php\php.ini using any text editor

delete ";" in ";extension = intl"

-;extension=intl
+extension=intl

'php' is not recognized as an internal or external command


In case of spam reloads due to live server:

Goto File > preference > settings

search for @ext:ritwickdey.liveserver Ignore Files

click Edit in settings.json

add the following lines, and restart the live server.

"liveServer.settings.ignoreFiles":[
    ...
+    "vendor/**",
+    "writable/**",
]

Contributors 🏅

Amazing people behind these project:


briellers

🖼️ 🎨

DauntlessDev

🔣 🖼️ 🤔 🎨

Hezzz

🕹 🔣 📖 📈

Simperfy

🕹 🔣 🖼️ 🚇 🎨

Stormy26

📢 🖼️

Person who worked on features:

  • intended routes @Simperfy (redirect back to previously visited URL after login)
  • form validation
    • login @Simperfy
    • sign up @Simperfy
    • edit profile @briellers, @Simperfy
    • add/edit item @Hezzz, @Simperfy, @stormy26
    • add/edit review @Simperfy
  • place/accept offer @Simperfy, @stormy26
  • login/sign up UI @briellers
  • view profile @briellers
  • edit profile @briellers, @Hezzz
  • authentication @Simperfy
  • real-time messaging @Simperfy
  • view items per category @DauntlessDev
  • search for items @DauntlessDev
  • home page @DauntlessDev
  • place item listing @Hezzz, @Simperfy, @stormy26
  • reviews UI @briellers
  • review history @DauntlessDev
  • image uploads @Simperfy

  • Category Model/Schema @Hezzz, @Simperfy
  • Item Model/Schema @Hezzz, @Simperfy
  • User Model/Schema @Hezzz, @Simperfy
  • Offers Model/Schema @Hezzz, @Simperfy
  • Reviews Model/Schema @Hezzz, @Simperfy
  • Messages Model/Schema @Hezzz, @Simperfy

  • Hosting/CI/CD @Simperfy

...

ERD by Hezzz

Prototype by Simperfy

Idea of DauntlessDev