Code Monkey home page Code Monkey logo

The Hacker Plus theme

Hacker Plus is a Jekyll theme for GitHub Pages based on The Hacker Theme with added cool new features optimised for those who like to spread their knowledge in the InfoSec or Competitive Programming fields by writing writups/solutions for the problems they have solved during a CTF or Programming Contest

Run the script -> Write in markdown -> Push commit -> The site is generated automatically

You can preview the theme to see what it looks like, or even use it today. You can also visit my personal site to see the theme used in an actual website

The theme is optimised for easy use in VS Code with some useful snippets to reduce the burden

Added Features

  • UI improvements with mobile compatibility
  • Scripts for automatic generation of boilerplate templates for each writeup/solution
  • Social media links
  • Disqus comments section
  • Easy google site verification, google analytics integration
  • Post share buttons(for Facebook, Twitter and LinkedIn)
  • Automatic sitemap generation for improved SEO
  • Search by tag functionality
  • Anchors for subheadings
  • Code markdown using Prism.js instead of rogue
    • Line number support
    • Code copy and download support
    • Syntax highlighting for numerous languages
    • Support for font ligatures in code like that for =>, !=, etc.
  • Optimisations for CTF Writeups:
    • Automatically generate the top level writeups.html page with proper categorisation
    • Automatically add side nav bar to show other writeups in the same CTF
    • Automatically generate beautiful headers for each writeup
  • Optimisations for CP Solutions:
    • Automatically fetch and render problem statements from platforms like Codechef
    • Automatically generate the top level solutions.html page with proper categorisation
    • Automatically add side nav bar to show other solutions in the same contest
    • Automatically generate beautiful headers for each solution

Some useful snippets for markdown included in the template project:

Prefix Description
cmdbashdown To add a code block with bash prompt and download
cmdbash To add a code block with bash prompt
cmdotherdown To add a code block with other prompt and download
cmdother To add a code block with other prompt
down Downloadable code
linenum Code block with line numbers
linenumdown Downloadable code with line numbers

Usage

To use the Hacker Plus theme:

(Assuming that you have VS Code and python already installed)

  1. Go to CaptainIRS/hacker-plus-template and click on 'Use this template'. Then fill in the asked details. This repo contains the basic structure, useful snippets for markdown in VS Code and a Gemfile in case you want to build and test the site locally
  2. Enable GitHub Pages in your repository
  3. Clone the repo locally and run git submodule add https://github.com/CaptainIRS/hacker-plus-scripts scripts to get the required python scripts
  4. Fill in in the desired fields the _config.yml file and push the commits to have a working site
  5. To get started, follow the instructions below(in VS Code):

Writing CTF Writeups:

  1. Open a new terminal window in VS Code and run cd scripts
  2. Run python writeup_gen.py and fill in the details. The script would generate the required writeup files and asset directory for the CTF and open the required files in VS Code for editing
  3. Write the writeups in markdown and push the commits to your repo

Writing Codechef Problem Solutions:

  1. Open a new terminal window in VS Code and run cd scripts
  2. Run python codechef_gen.py and fill in the details. The script would generate the required solution files and open them in VS Code for editing
  3. Write the solutions in markdown and push the commits to your repo

Customizing

Stylesheet

If you'd like to add your own custom styles:

  1. Create a file called /assets/css/style.scss in your site
  2. Add the following content to the top of the file, exactly as shown:
    ---
    ---
    
    @import "{{ site.theme }}";
  3. Add any custom CSS (or Sass, including imports) you'd like immediately after the @import line

Roadmap

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

Upcoming features

  • Support for more CP platforms(Codeforces, TopCoder, etc.)

Contributing

Contributions are welcome! If you'd like a feature to be added, submit an issue or make a pull request

Previewing the theme locally

If you'd like to preview the theme locally (for example, in the process of proposing a change):

  1. Clone down the theme's repository (git clone https://github.com/CaptainIRS/hacker-plus-theme)
  2. cd into the theme's directory
  3. Run gem install bundler and bundle install to install the necessary dependencies
  4. Run bundle exec jekyll serve to start the preview server
  5. Visit localhost:4000 in your browser to preview the theme

License

The theme is licensed under MIT License

VictoryGod's Projects

api-security-checklist icon api-security-checklist

Checklist of the most important security countermeasures when designing, testing, and releasing your API

aptnotes icon aptnotes

Various public documents, whitepapers and articles about APT campaigns

awesome-appsec icon awesome-appsec

A curated list of resources for learning about application security

awesome-bug-bounty icon awesome-bug-bounty

A comprehensive curated list of available Bug Bounty & Disclosure Programs and Write-ups.

awesome-ctf icon awesome-ctf

A curated list of CTF frameworks, libraries, resources and softwares

awesome-cyber-skills icon awesome-cyber-skills

A curated list of hacking environments where you can train your cyber skills legally and safely

awesome-devsecops icon awesome-devsecops

An authoritative list of awesome devsecops tools with the help from community experiments and contributions.

awesome-exploit-development icon awesome-exploit-development

A curated list of resources (books, tutorials, courses, tools and vulnerable applications) for learning about Exploit Development

awesome-fuzzing icon awesome-fuzzing

A curated list of fuzzing resources ( Books, courses - free and paid, videos, tools, tutorials and vulnerable applications to practice on ) for learning Fuzzing and initial phases of Exploit Development like root cause analysis.

awesome-iot-hacks icon awesome-iot-hacks

A Collection of Hacks in IoT Space so that we can address them (hopefully).

awesome-lockpicking icon awesome-lockpicking

:unlock::sunglasses: A curated list of awesome guides, tools, and other resources related to the security and compromise of locks, safes, and keys.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.