Skip to content

Latest commit

 

History

History
146 lines (94 loc) · 4.74 KB

README.en.md

File metadata and controls

146 lines (94 loc) · 4.74 KB

bananass

한국어 | English

Bananass🍌🍌🍌🍌: Noun Baekjoon framework for JavaScript.

Important

const whyBananass = {
  banana: '🍌',
  bananas: '🍌🍌',
  bananass: '🍌🍌🍌🍌',
}
console.log(('b' + 'a' + +'a' + 'a').toLowerCase() + (!(1/0) + [])[3].repeat(2));

Hello, Bananass!

Welcome to the Bananass🍌🍌🍌🍌 framework.🎉

The Bananass Framework is a Baekjoon framework for JavaScript created by LuMir, designed for more convenient problem-solving in the Baekjoon Node.js environment.

You no longer need to write template code using the readline or fs modules and copy-paste it every time! With the Bananass Framework, you can experience more convenient problem-solving, just like writing a single solution functionfunction solution() {} on Programmers.

But do we really need to learn a framework just to solve Baekjoon problems? Let's find out why below!

Why Bananass?

Why hasn't there been a framework specialized for problem-solving among the numerous frameworks in the JavaScript ecosystem? Shall we take a look at an example of solving the Baekjoon Problem 1000: A+B using JavaScript together?

  • Before: Solving the problem using the traditional method.

    const readline = require('node:readline');
    const { EOL } = require('node:os');
    
    let inputStr = '';
    
    const rl = readline.createInterface({
      input: process.stdin,
      output: process.stdout,
    });
    
    rl.on('line', line => {
      inputStr = `${inputStr}${line}${EOL}`;
    
    }).on('close', () => {
      console.log(solution(inputStr));
    
      process.exit(0);
    });
    
    function solution(inputStr) {
      const input = inputStr
        .trim()
        .split(' ')
        .map(val => Number(val));
    
      const [a, b] = input;
    
      return a + b;
    }
  • After: Solving the problem using the Bananass Framework.

    function solution(input) {
      const [a, b] = input
        .trim()
        .split(' ')
        .map(Number);
    
      console.log(a + b);
    }
    
    module.exports = solution;

Wow!😲 Isn't it amazing? Now you can focus solely on the algorithm logic with simplified code.

But is that all? Of course not!

  • Use of the latest syntax like ES2025, not limited to the Baekjoon Node.js environment
  • Use of custom modules and external libraries like lodash
  • Built-in support for ESLint and Prettier
  • Extensive documentation and community support
  • ...

How about it? Wouldn't you like to experience more convenient problem-solving with the Bananass Framework?🤔

Getting Started with Bananass

Like create-react-app for React and create-next-app for Next.js,

Experience a new paradigm in problem-solving right now with create-bananass-app provided by the Bananass Framework!

You can instantly install and use the Bananass Framework with create-bananass-app! (Although it's not really an appApp, but that's not important...🤔)

npx create-bananass-app my-bananass-app --no-install

For more detailed usage, please refer to the Bananass Framework Documentation.

Bananass Framework Documentation

https://bananass.lumir.page

The Bananass Framework values documentation as its highest priority. You can find all usage instructions and features of the Bananass Framework in the Bananass Framework Documentation.

Contribution (Issues, Pull Requests, Discussions)

Thank you for your interest in the Bananass Framework.🙇‍♂️ We appreciate the valuable time you invest in the Bananass Framework.

We welcome issues, pull requests, and discussions on various topics, including bugs and suggestions.

However, to maintain a proper community environment and create better open-source software, please make sure to review the following before contributing to the Bananass Framework:

Versioning

The Bananass Framework follows Semantic Versioning. All release versions adhere to the MAJOR.MINOR.PATCH format.

Code of Conduct

Before contributing to the community, please refer to the Code of Conduct.

Change Log

For detailed information on changes, please refer to the Change Log.

Security

Have you discovered a security issue? Please refer to the Security.

License

The Bananass Framework is licensed under the MIT. Please refer to the License.