/terma

Primary LanguageJavaScript

Contributors Forks Stargazers Issues


A terminal-styled portfolio for those who love the command line interfaces!
View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

Product Name Screen Shot

Bippity boppity, Terma is a terminal-styled portfolio with a cool command-line interface. With Terma, you can create a sleek, professional-looking portfolio that's easy to customize, deploy, and host using your own domain.

Here's why Terma is for you:

  • A cool dark and light theme with transition effects.
  • By default, you only need to modify 5 pages to get your portfolio up and running (each functionality will be listed below).
  • Free hosting using Vercel and add a personal touch with your own custom domain.

We're constantly improving on Terma to meet your needs. Got any issues, ideas, or a feedback? We're all ears!

(back to top)

Built With

This project is built with the following tech-stack:

  • JavaScript
  • Next
  • TailwindCSS

For a full list of dependencies, see package.json.

(back to top)

Getting Started

This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps.

Installation

Below is the step-by-step guide on how to install and setup this project efficiently.

Setup

  1. Clone the repo
    git clone https://github.com/msafdev/terma.git
  2. Install NPM packages
    npm install

Development

  1. Run the project
    npm run dev
  2. Open your browser and go to http://localhost:PORT

File Structure

components/cmd
  • banner.js - Contains the banner text that appears on the terminal. Use Manytools to generate your own.
  • header.js - Contains the header text that appears on the terminal. (e.g. demo@terma:~$)
  • input.js - Will be where you add custom function handlers. (e.g. Copy to clipboard functionality)
lib
  • cmd.js - Will be where you store your responses for each command. (e.g. about, projects, contact, etc.)
  • utils.js - Switch-case function that handles the command input and returns the appropriate response.

Deployment

  1. Change everything you need then try building the project.
  2. If the build returns success, deploy it to Vercel (or any other hosting service actually)

(back to top)

Roadmap

  • Add theme switcher with session storage
  • Add Changelog

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/feature-name)
  3. Commit your Changes (git commit -m 'Add a feature-name')
  4. Push to the Branch (git push origin feature/feature-name)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License. See LICENSE.txt for more information.

(back to top)

Contact

Your Name - Linkedin - faris.kocak@gmail.com

Project Link: https://github.com/msafdev/terma

(back to top)

Acknowledgments

These are the resources that helped me build this project:

(back to top)